/** * Wall phrasings every harness shares. v1 applied every pattern to every * harness deliberately - a muse turn dying on "You've hit your usage limit" * or a provider 401 must classify no matter which CLI printed it. Each * descriptor spreads these after its harness-specific phrasings. */ import type { AuthMatcher, LimitMatcher, TransportMatcher, UnavailableMatcher } from "./descriptor.js"; /** Bounds on a matcher, enforced wherever one is compiled - the limits * scanner and the override loader alike (RFC-02 change 9). They keep a * crafted override file from DoS'ing the compiler or the scanner; the * input window, not pattern analysis, is the backtracking bound. */ export declare const MAX_PATTERN_LENGTH = 200; export declare const MAX_MATCHERS_PER_KIND = 64; /** The only flags a matcher may carry. `g` and `y` are stateful and * would make `test()` order-dependent. */ export declare const MATCHER_FLAGS = "imsu"; /** Compile one matcher under the bounds. Throws a plain Error naming the * violated bound; loaders wrap it in their own refusal type. */ export declare const compileMatcher: (pattern: string, flags: string | undefined) => RegExp; export declare const SHARED_LIMIT_MATCHERS: ReadonlyArray; export declare const SHARED_AUTH_MATCHERS: ReadonlyArray; export declare const SHARED_TRANSPORT_MATCHERS: ReadonlyArray; export declare const SHARED_UNAVAILABLE_MATCHERS: ReadonlyArray; //# sourceMappingURL=matchers.d.ts.map