import { ProfanityFilterOptions } from "./data/profanity"; declare type Style = "lowerCase" | "upperCase" | "capital" | "titleCase" | "camelCase" | "pascalCase" | "kebabCase" | "snakeCase"; export interface Config { dictionaries: string[][]; separator?: string; randomDigits?: number; length?: number; style?: Style; exclude?: string[]; profanityList?: string[]; profanityOptions?: ProfanityFilterOptions; ensureUnique?: boolean; seed?: string | number; template?: string; } export interface EmailOptions { randomDigits?: number; stripLeadingDigits?: boolean; leadingFallback?: string; } export interface GenerateManyOptions extends Config { count: number; unique?: boolean; } export declare function generateUniqueAsync(config: Config, isTaken: (candidate: string) => boolean | Promise, maxAttempts?: number): Promise; export declare function generateMany(options: GenerateManyOptions): string[]; export declare function generateFromEmail(email: string, randomDigits?: number): string; export declare function generateFromEmail(email: string, options?: EmailOptions): string; export declare function generateUsername(separator?: string, randomDigits?: number, length?: number, prefix?: string): string; export declare function uniqueUsernameGenerator(config: Config): string; export { adjectives, nouns } from "./data"; export { DEFAULT_PROFANITY } from "./data/profanity";