import { z } from 'zod'; /** * OAuthLint rule severity levels. * Mapped to Semgrep severities and used for exit code decisions. */ export declare const SeveritySchema: z.ZodEnum<["INFO", "WARNING", "ERROR"]>; export type Severity = z.infer; /** * OAuthLint-specific metadata attached to each rule. * The `llm-prevalence` tag is core to our positioning: it indicates * how often this anti-pattern appears in code produced by LLMs (Cursor, * Claude Code, Copilot, Gemini Code Assist). */ export declare const OAuthLintMetadataSchema: z.ZodObject<{ 'oauthlint-rule-id': z.ZodString; 'oauthlint-doc-url': z.ZodString; category: z.ZodLiteral<"security">; cwe: z.ZodString; owasp: z.ZodOptional; 'llm-prevalence': z.ZodEnum<["HIGH", "MEDIUM", "LOW"]>; references: z.ZodOptional>; technology: z.ZodOptional>; }, "strip", z.ZodTypeAny, { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }, { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }>; export type OAuthLintMetadata = z.infer; export declare const RuleSchema: z.ZodEffects; severity: z.ZodEnum<["INFO", "WARNING", "ERROR"]>; message: z.ZodString; metadata: z.ZodObject<{ 'oauthlint-rule-id': z.ZodString; 'oauthlint-doc-url': z.ZodString; category: z.ZodLiteral<"security">; cwe: z.ZodString; owasp: z.ZodOptional; 'llm-prevalence': z.ZodEnum<["HIGH", "MEDIUM", "LOW"]>; references: z.ZodOptional>; technology: z.ZodOptional>; }, "strip", z.ZodTypeAny, { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }, { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }>; pattern: z.ZodOptional>; 'pattern-either': z.ZodOptional, "many">>; 'pattern-not': z.ZodOptional>; 'pattern-inside': z.ZodOptional>; 'pattern-regex': z.ZodOptional; 'pattern-either-regex': z.ZodOptional>; patterns: z.ZodOptional, "many">>; fix: z.ZodOptional; paths: z.ZodOptional>; exclude: z.ZodOptional>; }, "strip", z.ZodTypeAny, { include?: string[] | undefined; exclude?: string[] | undefined; }, { include?: string[] | undefined; exclude?: string[] | undefined; }>>; mode: z.ZodOptional>; 'pattern-sources': z.ZodOptional, "many">>; 'pattern-sinks': z.ZodOptional, "many">>; 'pattern-sanitizers': z.ZodOptional, "many">>; 'pattern-propagators': z.ZodOptional, "many">>; }, "strip", z.ZodTypeAny, { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }, { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }>, { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }, { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }>; export type Rule = z.infer; export declare const RuleFileSchema: z.ZodObject<{ rules: z.ZodArray; severity: z.ZodEnum<["INFO", "WARNING", "ERROR"]>; message: z.ZodString; metadata: z.ZodObject<{ 'oauthlint-rule-id': z.ZodString; 'oauthlint-doc-url': z.ZodString; category: z.ZodLiteral<"security">; cwe: z.ZodString; owasp: z.ZodOptional; 'llm-prevalence': z.ZodEnum<["HIGH", "MEDIUM", "LOW"]>; references: z.ZodOptional>; technology: z.ZodOptional>; }, "strip", z.ZodTypeAny, { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }, { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }>; pattern: z.ZodOptional>; 'pattern-either': z.ZodOptional, "many">>; 'pattern-not': z.ZodOptional>; 'pattern-inside': z.ZodOptional>; 'pattern-regex': z.ZodOptional; 'pattern-either-regex': z.ZodOptional>; patterns: z.ZodOptional, "many">>; fix: z.ZodOptional; paths: z.ZodOptional>; exclude: z.ZodOptional>; }, "strip", z.ZodTypeAny, { include?: string[] | undefined; exclude?: string[] | undefined; }, { include?: string[] | undefined; exclude?: string[] | undefined; }>>; mode: z.ZodOptional>; 'pattern-sources': z.ZodOptional, "many">>; 'pattern-sinks': z.ZodOptional, "many">>; 'pattern-sanitizers': z.ZodOptional, "many">>; 'pattern-propagators': z.ZodOptional, "many">>; }, "strip", z.ZodTypeAny, { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }, { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }>, { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }, { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { rules: { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }[]; }, { rules: { message: string; id: string; languages: string[]; severity: "INFO" | "WARNING" | "ERROR"; metadata: { 'oauthlint-rule-id': string; 'oauthlint-doc-url': string; category: "security"; cwe: string; 'llm-prevalence': "HIGH" | "MEDIUM" | "LOW"; owasp?: string | undefined; references?: string[] | undefined; technology?: string[] | undefined; }; pattern?: unknown; 'pattern-either'?: unknown[] | undefined; 'pattern-not'?: unknown; 'pattern-inside'?: unknown; 'pattern-regex'?: string | undefined; 'pattern-either-regex'?: string[] | undefined; patterns?: unknown[] | undefined; fix?: string | undefined; paths?: { include?: string[] | undefined; exclude?: string[] | undefined; } | undefined; mode?: "search" | "taint" | undefined; 'pattern-sources'?: unknown[] | undefined; 'pattern-sinks'?: unknown[] | undefined; 'pattern-sanitizers'?: unknown[] | undefined; 'pattern-propagators'?: unknown[] | undefined; }[]; }>; export type RuleFile = z.infer; //# sourceMappingURL=schema.d.ts.map