export type Category = 'serif' | 'sans-serif' | 'display' | 'handwriting' | 'monospace'; export type Subset = 'korean' | 'latin' | 'latin-ext' | 'arabic' | 'bengali' | 'chinese-hongkong' | 'chinese-simplified' | 'chinese-traditional' | 'cyrillic' | 'cyrillic-ext' | 'devanagari' | 'greek' | 'greek-ext' | 'gujarati' | 'gurmukhi' | 'hebrew' | 'japanese' | 'kannada' | 'khmer' | 'malayalam' | 'myanmar' | 'oriya' | 'sinhala' | 'tamil' | '​telugu' | 'thai' | 'tibetan' | 'vietnamese'; export type SortOption = 'trending' | 'popularity' | 'date' | 'alpha'; export type Variant = '100' | '100italic' | '200' | '200italic' | '300' | '300italic' | 'regular' | 'italic' | '500' | '500italic' | '600' | '600italic' | '700' | '700italic' | '800' | '800italic' | '900' | '900italic'; export interface Font { family: string; id: string; category: Category; subsets: Subset[]; variants: Variant[]; kind?: string; version?: string; lastModified?: string; files?: Record; } export declare const FONT_FAMILY_DEFAULT = "Open Sans"; export type FontList = Map; export interface Options { pickerId: string; families: string[]; categories: Category[]; scripts: Subset[]; variants: Variant[]; filter: (font: Font) => boolean; limit: number; sort: SortOption; } export declare const OPTIONS_DEFAULTS: Options; export type FilterOptionHandlerArgType = { name: 'searchQuery'; value: string; } | { name: 'categories'; value: Category[]; } | { name: 'subsets'; value: Subset[]; }; export type ChangeFilterOptionHandler = (arg: FilterOptionHandlerArgType) => void; export type FilterOptionType = { searchQuery: string; categories: Category[]; subsets: Subset[]; };