/** * Unicode symbol generator. * * Two ways to specify the character pool, then draws `length` code points * from it uniformly: * * - `` — a * named alphabet from the registry. * - `` — an inline set, * spelled directly (literals + `[x-y]` ranges, any Unicode). This is * the friendly path that avoids regex for "pick one of these * symbols". * * Exactly one of `alphabet` / `value` must be given. To pick a whole * WORD from a list, use `` instead — `symbol` is * character-level. */ import type { Generator } from './generator.js'; export declare const DEFAULT_SYMBOL_LENGTH = 1; export declare const MAX_SYMBOL_LENGTH = 1024; export interface SymbolGenAttrs { readonly alphabet?: string | undefined; /** Inline character set, e.g. "कखगघ" or "[a-z][0-9]". */ readonly value?: string | undefined; /** * Characters to ADD to the base set (same grammar as `value`). * Useful to extend a fixed named alphabet, e.g. alphabet="latin.lower" * include="[0-9]". */ readonly include?: string | undefined; /** * Characters to REMOVE from the set (same grammar as `value`). Applied * last, so exclude has the final say — `value="[a-z]" exclude="y"` * yields a–z without y. */ readonly exclude?: string | undefined; readonly length?: number | string | undefined; } export declare class SymbolGeneratorError extends Error { readonly name = "SymbolGeneratorError"; } export declare function parseSymbolLength(raw: number | string | undefined, fallback?: number): number; export declare function symbolGenerator(attrs: SymbolGenAttrs): Generator; /** * Resolve the character pool from either the inline `value` set or the * named `alphabet`. Exactly one must be provided. */ export declare function resolveSymbolChars(attrs: SymbolGenAttrs): readonly string[]; //# sourceMappingURL=symbol.d.ts.map