/// type Cash = import("cash-dom").Cash; type MElements = NodeListOf | JQuery | Cash; declare namespace M { abstract class Component extends ComponentBase { /** * Construct component instance and set everything up */ constructor(elem: Element, options?: Partial); /** * Destroy plugin instance and teardown */ destroy(): void; } abstract class ComponentBase { constructor(options?: Partial); /** * The DOM element the plugin was initialized with */ el: Element; /** * The options the instance was initialized with */ options: TOptions; } interface Openable { isOpen: boolean; open(): void; close(): void; } interface InternationalizationOptions { cancel: string; clear: string; done: string; previousMonth: string; nextMonth: string; months: string[]; monthsShort: string[]; weekdays: string[]; weekdaysShort: string[]; weekdaysAbbrev: string[]; } }