@reliverse/rematch
Version:
@reliverse/rematch is a high-performance minimal glob matcher, with micromatch-level power, zepto-level size, and reliverse-grade dx.
57 lines (56 loc) • 1.21 kB
TypeScript
type Token = {
type: string;
value: string;
output?: string;
prev?: Token;
posix?: boolean;
star?: boolean;
suffix?: string;
extglob?: boolean;
backslashes?: boolean;
isBrace?: boolean;
isBracket?: boolean;
isExtglob?: boolean;
isGlobstar?: boolean;
negated?: boolean;
depth?: number;
isPrefix?: boolean;
outputIndex?: number;
tokensIndex?: number;
comma?: boolean;
dots?: boolean;
};
export type State = {
input: string;
index: number;
start: number;
dot: boolean;
consumed: string;
output: string;
prefix: string;
backtrack: boolean;
negated: boolean;
brackets: number;
braces: number;
parens: number;
quotes: number;
globstar: boolean;
tokens: Token[];
peek?: (n?: number) => string;
advance?: () => string;
negatedExtglob?: boolean;
maxDepth?: number;
slashes?: number[];
parts?: string[];
};
/**
* Parse the given input string.
* @param {String} input
* @param {Object} options
* @return {Object}
*/
declare const parse: {
(input: any, options: any): State;
fastpaths(input: any, options: any): any;
};
export default parse;