declare module 'frenchkiss' { type pluralRule = (count: number) => string; type missingVariableHandler = ( variable: string, key: string, language: string ) => string; type missingKeyHandler = ( key: string, params: string, language: string ) => string; interface StoreData { [key: string]: string | number | StoreData; } interface CacheData { [key: string]: ( params?: object, pluralRule?: pluralRule, key?: string, language?: string, missingVariableHandler?: missingVariableHandler ) => string; } interface CacheItems { [key: string]: CacheData; } interface StoreItems { [key: string]: string | number; } export const cache: CacheItems; export const store: StoreItems; export function t(key: string, params?: object, language?: string): string; export function onMissingKey( missingKeyHandler: missingKeyHandler ): void; export function onMissingVariable( missingVariableHandler: missingVariableHandler ): void; export function locale(language?: string): string; export function fallback(language?: string): string; export function unset(language: string): void; export function set(language: string, table: StoreData): void; export function extend(language: string, table: StoreData): void; export function plural(language: string, pluralRule: pluralRule): void; }