collapse.d.ts 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /** Returns a new `BaseComponent` instance. */
  2. declare class BaseComponent {
  3. element: Element;
  4. options?: BaseOptions;
  5. /**
  6. * @param target `Element` or selector string
  7. * @param config component instance options
  8. */
  9. constructor(target: Element | string, config?: BaseOptions);
  10. get version(): string;
  11. get name(): string;
  12. get defaults(): {};
  13. /** just to have something to extend from */
  14. _toggleEventListeners: () => void;
  15. /** Removes component from target element. */
  16. dispose(): void;
  17. }
  18. declare interface BaseOptions {
  19. [key: string]: unknown;
  20. }
  21. /** Returns a new `Colapse` instance. */
  22. declare class Collapse extends BaseComponent {
  23. static selector: string;
  24. static init: (element: Element) => Collapse;
  25. static getInstance: (element: Element) => Collapse | null;
  26. element: HTMLElement;
  27. options: CollapseOptions;
  28. parent: Element | null;
  29. triggers: Element[];
  30. /**
  31. * @param target and `Element` that matches the selector
  32. * @param config instance options
  33. */
  34. constructor(target: Element | string, config?: Partial<CollapseOptions>);
  35. /**
  36. * Returns component name string.
  37. */
  38. get name(): string;
  39. /**
  40. * Returns component default options.
  41. */
  42. get defaults(): {
  43. parent: null;
  44. };
  45. /** Hides the collapse. */
  46. hide(): void;
  47. /** Shows the collapse. */
  48. show(): void;
  49. /** Toggles the visibility of the collapse. */
  50. toggle(): void;
  51. /**
  52. * Toggles on/off the event listener(s) of the `Collapse` instance.
  53. *
  54. * @param add when `true`, the event listener is added
  55. */
  56. _toggleEventListeners: (add?: boolean) => void;
  57. /** Remove the `Collapse` component from the target `Element`. */
  58. dispose(): void;
  59. }
  60. export default Collapse;
  61. declare interface CollapseOptions extends BaseOptions {
  62. parent: string | HTMLElement | null;
  63. }
  64. export { }