export declare function isValidTimeZone(raw: string): boolean; export declare const FORMAT_ONLY_TOKENS: Set; export declare const DIGIT_LEADING_TOKENS: Set; export declare const UNBOUNDED_WIDTH_TOKENS: Set; export declare function tokenFragment(token: string, locale: string, nextToken?: string): string; export declare const UNPADDED_NUMERIC_TOKENS: Set; export declare const UNPADDED_NUMERIC_RANGES: Record>; /** * Given the literal digit string a run of N adjacent unpadded-numeric * tokens matched as a whole (e.g. "112" for a 2-token run), enumerates * every way to split it into N pieces (one per token, each piece 1-2 * digits per that token's own width rule) and returns every split where * every piece is independently valid for its token. Length 0 means the * run's regex match shouldn't have been possible in the first place * (shouldn't happen — the caller only invokes this after the whole * pattern already matched, meaning at least one split exists: the one the * regex actually took). Length 1 means the reading is unambiguous. * Length 2+ means true ambiguity — the caller should throw rather than * pick one. * * Recursive over token count rather than hardcoded to 2, so a 3+ token * unseparated run (e.g. "Hms") is covered by the same logic without a * special case — those are rarer in practice but not impossible, and a * partial fix that only covered pairs would leave the identical bug for * anyone writing a 3-token glued run. */ export declare function enumerateValidSplits(digits: string, tokens: string[]): number[][];