import { AvalaibleGender, AvalaibleLanguage, GenderCollection, GenderData } from './types';
export * as Types from './types';
export declare let L: AvalaibleLanguage;
export declare const Ls: {
    [key: string]: GenderCollection;
};
export declare const DefaultElements: { [key in AvalaibleLanguage]?: Record<string, Record<"F" | "M" | "X", string>>; };
export declare function locale(language?: AvalaibleLanguage, define?: boolean): Promise<GenderCollection>;
export declare function addDefaults(language: AvalaibleLanguage, elements: Record<string, Record<'F' | 'M' | 'X', string>>): void;
export declare function gender<T extends Record<string, Record<'F' | 'M' | 'X', string>>, D extends Record<string, Record<'F' | 'M' | 'X', string>> = typeof DefaultElements[typeof L]>(gender: AvalaibleGender, options?: {
    capitalize?: boolean;
    custom?: T;
    language?: AvalaibleLanguage;
}): GenderData & {
    [K in keyof T]: string;
} & {
    [K in keyof D]: string;
};
export default gender;
