import type { TrustedHTML } from 'trusted-types/lib'; export type InferDOMType = T extends CSSStyleDeclaration ? Partial : T extends infer R ? R : any; export type OptionDataObject = { [value: string]: number | string | boolean; }; export interface OptionRowDivider { divider: boolean; } export interface HtmlStruct { tagName: keyof HTMLElementTagNameMap; props?: any; attrs?: Record; children?: HtmlStruct[]; } export type CollectionData = { [value: string]: number | string | boolean; } | Array; export interface OptionRowData { text: string; value: string | number | boolean; classes?: string; divider?: string; disabled?: boolean; selected?: boolean | number; visible?: boolean | string; title?: string; type?: 'option' | 'optgroup'; _data?: { divider?: string; }; _key?: string; _value?: string | number | boolean; } export interface OptGroupRowData extends Omit { label: string; value?: string | number | boolean; children: Array; } export interface VirtualCache { bottom: number; data: HtmlStruct[]; scrollTop: number; top: number; } export interface VirtualScrollOption { rows: HtmlStruct[]; scrollEl: HTMLElement; contentEl: HTMLElement; callback: () => void; sanitizer?: (html: string) => string | TrustedHTML; } export interface LabelFilter { label: string; search: string; originalLabel: string; originalSearch: string; row: OptionRowData | OptGroupRowData; } export interface TextFilter { text: string; search: string; originalText: string; originalSearch: string; row: OptionRowData | OptGroupRowData; parent?: OptionRowData | OptGroupRowData; } //# sourceMappingURL=interfaces.d.ts.map