版博士V2.0程序
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

62 строки
1.8 KiB

  1. import HTMLElement from '../html-element/HTMLElement';
  2. import IHTMLSlotElement from './IHTMLSlotElement';
  3. import IText from '../text/IText';
  4. import IElement from '../element/IElement';
  5. import INode from '../node/INode';
  6. import Event from '../../event/Event';
  7. /**
  8. * HTML Slot Element.
  9. *
  10. * Reference:
  11. * https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement.
  12. */
  13. export default class HTMLSlotElement extends HTMLElement implements IHTMLSlotElement {
  14. onslotchange: (event: Event) => void | null;
  15. /**
  16. * Returns name.
  17. *
  18. * @returns Name.
  19. */
  20. get name(): string;
  21. /**
  22. * Sets name.
  23. *
  24. * @param name Name.
  25. */
  26. set name(name: string);
  27. /**
  28. * Sets the slot's manually assigned nodes to an ordered set of slottables.
  29. *
  30. * @param _nodes Nodes.
  31. */
  32. assign(..._nodes: Array<IText | IElement>): void;
  33. /**
  34. * Returns assigned nodes.
  35. *
  36. * @param [options] Options.
  37. * @param [options.flatten] A boolean value indicating whether to return the assigned nodes of any available child <slot> elements (true) or not (false). Defaults to false.
  38. * @returns Nodes.
  39. */
  40. assignedNodes(options?: {
  41. flatten?: boolean;
  42. }): INode[];
  43. /**
  44. * Returns assigned elements.
  45. *
  46. * @param [_options] Options.
  47. * @param [_options.flatten] A boolean value indicating whether to return the assigned elements of any available child <slot> elements (true) or not (false). Defaults to false.
  48. * @returns Nodes.
  49. */
  50. assignedElements(_options?: {
  51. flatten?: boolean;
  52. }): IElement[];
  53. /**
  54. * Clones a node.
  55. *
  56. * @override
  57. * @param [deep=false] "true" to clone deep.
  58. * @returns Cloned node.
  59. */
  60. cloneNode(deep?: boolean): IHTMLSlotElement;
  61. }