Spaces:
Configuration error
Configuration error
export interface ParseOptions { | |
/** | |
* Set the default delimiter for repeat parameters. (default: `'/'`) | |
*/ | |
delimiter?: string; | |
/** | |
* List of characters to automatically consider prefixes when parsing. | |
*/ | |
prefixes?: string; | |
} | |
/** | |
* Parse a string for the raw tokens. | |
*/ | |
export declare function parse(str: string, options?: ParseOptions): Token[]; | |
export interface TokensToFunctionOptions { | |
/** | |
* When `true` the regexp will be case sensitive. (default: `false`) | |
*/ | |
sensitive?: boolean; | |
/** | |
* Function for encoding input strings for output. | |
*/ | |
encode?: (value: string, token: Key) => string; | |
/** | |
* When `false` the function can produce an invalid (unmatched) path. (default: `true`) | |
*/ | |
validate?: boolean; | |
} | |
/** | |
* Compile a string to a template function for the path. | |
*/ | |
export declare function compile<P extends object = object>(str: string, options?: ParseOptions & TokensToFunctionOptions): PathFunction<P>; | |
export declare type PathFunction<P extends object = object> = (data?: P) => string; | |
/** | |
* Expose a method for transforming tokens into the path function. | |
*/ | |
export declare function tokensToFunction<P extends object = object>(tokens: Token[], options?: TokensToFunctionOptions): PathFunction<P>; | |
export interface RegexpToFunctionOptions { | |
/** | |
* Function for decoding strings for params. | |
*/ | |
decode?: (value: string, token: Key) => string; | |
} | |
/** | |
* A match result contains data about the path match. | |
*/ | |
export interface MatchResult<P extends object = object> { | |
path: string; | |
index: number; | |
params: P; | |
} | |
/** | |
* A match is either `false` (no match) or a match result. | |
*/ | |
export declare type Match<P extends object = object> = false | MatchResult<P>; | |
/** | |
* The match function takes a string and returns whether it matched the path. | |
*/ | |
export declare type MatchFunction<P extends object = object> = (path: string) => Match<P>; | |
/** | |
* Create path match function from `path-to-regexp` spec. | |
*/ | |
export declare function match<P extends object = object>(str: Path, options?: ParseOptions & TokensToRegexpOptions & RegexpToFunctionOptions): MatchFunction<P>; | |
/** | |
* Create a path match function from `path-to-regexp` output. | |
*/ | |
export declare function regexpToFunction<P extends object = object>(re: RegExp, keys: Key[], options?: RegexpToFunctionOptions): MatchFunction<P>; | |
/** | |
* Metadata about a key. | |
*/ | |
export interface Key { | |
name: string | number; | |
prefix: string; | |
suffix: string; | |
pattern: string; | |
modifier: string; | |
} | |
/** | |
* A token is a string (nothing special) or key metadata (capture group). | |
*/ | |
export declare type Token = string | Key; | |
export interface TokensToRegexpOptions { | |
/** | |
* When `true` the regexp will be case sensitive. (default: `false`) | |
*/ | |
sensitive?: boolean; | |
/** | |
* When `true` the regexp won't allow an optional trailing delimiter to match. (default: `false`) | |
*/ | |
strict?: boolean; | |
/** | |
* When `true` the regexp will match to the end of the string. (default: `true`) | |
*/ | |
end?: boolean; | |
/** | |
* When `true` the regexp will match from the beginning of the string. (default: `true`) | |
*/ | |
start?: boolean; | |
/** | |
* Sets the final character for non-ending optimistic matches. (default: `/`) | |
*/ | |
delimiter?: string; | |
/** | |
* List of characters that can also be "end" characters. | |
*/ | |
endsWith?: string; | |
/** | |
* Encode path tokens for use in the `RegExp`. | |
*/ | |
encode?: (value: string) => string; | |
} | |
/** | |
* Expose a function for taking tokens and returning a RegExp. | |
*/ | |
export declare function tokensToRegexp(tokens: Token[], keys?: Key[], options?: TokensToRegexpOptions): RegExp; | |
/** | |
* Supported `path-to-regexp` input types. | |
*/ | |
export declare type Path = string | RegExp | Array<string | RegExp>; | |
/** | |
* Normalize the given path string, returning a regular expression. | |
* | |
* An empty array can be passed in for the keys, which will hold the | |
* placeholder key descriptions. For example, using `/user/:id`, `keys` will | |
* contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`. | |
*/ | |
export declare function pathToRegexp(path: Path, keys?: Key[], options?: TokensToRegexpOptions & ParseOptions): RegExp; | |