import * as _typescript_eslint_utils_ts_eslint from '@typescript-eslint/utils/ts-eslint'; import { FlatConfig } from '@typescript-eslint/utils/ts-eslint'; import { R as RuleOptionConnection } from './shared/eslint-plugin.D35Y7FT8.cjs'; import 'zod'; /** Distribute Omit over a union so discriminant members are preserved. */ type DistributiveOmit = T extends unknown ? Omit : never; /** Input type — `targets` is optional when plugins handle tag matching. */ type ConnectionInput = DistributiveOmit & { targets?: RuleOptionConnection["targets"]; }; declare const _default: { configs: { /** * If you prefer configuring safeql via a config file (safeql.config.ts), use this config. */ useConfigFile: { plugins: { "@ts-safeql": { rules: { "check-sql": _typescript_eslint_utils_ts_eslint.RuleModule<"error" | "typeInferenceFailed" | "invalidQuery" | "missingTypeAnnotations" | "incorrectTypeAnnotations" | "invalidTypeAnnotations" | "pluginError" | "pluginSuggestion", ({ connections: { targets?: ({ wrapper: string | { regex: string; }; maxDepth?: number | undefined; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; } | { tag: string | { regex: string; }; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; })[] | undefined; keepAlive?: boolean | undefined; overrides?: { types?: Record<"bigint" | "boolean" | "int" | "null" | "void" | "date" | "int2" | "int4" | "int8" | "smallint" | "real" | "float4" | "float" | "float8" | "numeric" | "decimal" | "smallserial" | "serial" | "bigserial" | "uuid" | "text" | "varchar" | "char" | "bpchar" | "citext" | "bit" | "bool" | "timestamp" | "timestamptz" | "time" | "timetz" | "interval" | "inet" | "cidr" | "macaddr" | "macaddr8" | "money" | "json" | "jsonb" | "bytea", string | { parameter: string | { regex: string; }; return: string; }> | Record | undefined; columns?: Record | undefined; } | undefined; nullAsUndefined?: boolean | undefined; nullAsOptional?: boolean | undefined; inferLiterals?: boolean | ("string" | "number" | "boolean")[] | undefined; enforceType?: "fix" | "suggest" | undefined; plugins?: { package: string; config?: { [x: string]: unknown; } | undefined; }[] | undefined; } | { migrationsDir: string; targets?: ({ wrapper: string | { regex: string; }; maxDepth?: number | undefined; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; } | { tag: string | { regex: string; }; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; })[] | undefined; keepAlive?: boolean | undefined; overrides?: { types?: Record<"bigint" | "boolean" | "int" | "null" | "void" | "date" | "int2" | "int4" | "int8" | "smallint" | "real" | "float4" | "float" | "float8" | "numeric" | "decimal" | "smallserial" | "serial" | "bigserial" | "uuid" | "text" | "varchar" | "char" | "bpchar" | "citext" | "bit" | "bool" | "timestamp" | "timestamptz" | "time" | "timetz" | "interval" | "inet" | "cidr" | "macaddr" | "macaddr8" | "money" | "json" | "jsonb" | "bytea", string | { parameter: string | { regex: string; }; return: string; }> | Record | undefined; columns?: Record | undefined; } | undefined; nullAsUndefined?: boolean | undefined; nullAsOptional?: boolean | undefined; inferLiterals?: boolean | ("string" | "number" | "boolean")[] | undefined; enforceType?: "fix" | "suggest" | undefined; plugins?: { package: string; config?: { [x: string]: unknown; } | undefined; }[] | undefined; connectionUrl?: string | undefined; databaseName?: string | undefined; watchMode?: boolean | undefined; } | { databaseUrl: string; targets?: ({ wrapper: string | { regex: string; }; maxDepth?: number | undefined; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; } | { tag: string | { regex: string; }; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; })[] | undefined; keepAlive?: boolean | undefined; overrides?: { types?: Record<"bigint" | "boolean" | "int" | "null" | "void" | "date" | "int2" | "int4" | "int8" | "smallint" | "real" | "float4" | "float" | "float8" | "numeric" | "decimal" | "smallserial" | "serial" | "bigserial" | "uuid" | "text" | "varchar" | "char" | "bpchar" | "citext" | "bit" | "bool" | "timestamp" | "timestamptz" | "time" | "timetz" | "interval" | "inet" | "cidr" | "macaddr" | "macaddr8" | "money" | "json" | "jsonb" | "bytea", string | { parameter: string | { regex: string; }; return: string; }> | Record | undefined; columns?: Record | undefined; } | undefined; nullAsUndefined?: boolean | undefined; nullAsOptional?: boolean | undefined; inferLiterals?: boolean | ("string" | "number" | "boolean")[] | undefined; enforceType?: "fix" | "suggest" | undefined; plugins?: { package: string; config?: { [x: string]: unknown; } | undefined; }[] | undefined; } | ({ targets?: ({ wrapper: string | { regex: string; }; maxDepth?: number | undefined; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; } | { tag: string | { regex: string; }; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; })[] | undefined; keepAlive?: boolean | undefined; overrides?: { types?: Record<"bigint" | "boolean" | "int" | "null" | "void" | "date" | "int2" | "int4" | "int8" | "smallint" | "real" | "float4" | "float" | "float8" | "numeric" | "decimal" | "smallserial" | "serial" | "bigserial" | "uuid" | "text" | "varchar" | "char" | "bpchar" | "citext" | "bit" | "bool" | "timestamp" | "timestamptz" | "time" | "timetz" | "interval" | "inet" | "cidr" | "macaddr" | "macaddr8" | "money" | "json" | "jsonb" | "bytea", string | { parameter: string | { regex: string; }; return: string; }> | Record | undefined; columns?: Record | undefined; } | undefined; nullAsUndefined?: boolean | undefined; nullAsOptional?: boolean | undefined; inferLiterals?: boolean | ("string" | "number" | "boolean")[] | undefined; enforceType?: "fix" | "suggest" | undefined; plugins?: { package: string; config?: { [x: string]: unknown; } | undefined; }[] | undefined; } | { migrationsDir: string; targets?: ({ wrapper: string | { regex: string; }; maxDepth?: number | undefined; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; } | { tag: string | { regex: string; }; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; })[] | undefined; keepAlive?: boolean | undefined; overrides?: { types?: Record<"bigint" | "boolean" | "int" | "null" | "void" | "date" | "int2" | "int4" | "int8" | "smallint" | "real" | "float4" | "float" | "float8" | "numeric" | "decimal" | "smallserial" | "serial" | "bigserial" | "uuid" | "text" | "varchar" | "char" | "bpchar" | "citext" | "bit" | "bool" | "timestamp" | "timestamptz" | "time" | "timetz" | "interval" | "inet" | "cidr" | "macaddr" | "macaddr8" | "money" | "json" | "jsonb" | "bytea", string | { parameter: string | { regex: string; }; return: string; }> | Record | undefined; columns?: Record | undefined; } | undefined; nullAsUndefined?: boolean | undefined; nullAsOptional?: boolean | undefined; inferLiterals?: boolean | ("string" | "number" | "boolean")[] | undefined; enforceType?: "fix" | "suggest" | undefined; plugins?: { package: string; config?: { [x: string]: unknown; } | undefined; }[] | undefined; connectionUrl?: string | undefined; databaseName?: string | undefined; watchMode?: boolean | undefined; } | { databaseUrl: string; targets?: ({ wrapper: string | { regex: string; }; maxDepth?: number | undefined; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; } | { tag: string | { regex: string; }; transform?: string | (string | [string, string])[] | undefined; fieldTransform?: "snake" | "pascal" | "camel" | "screaming snake" | undefined; skipTypeAnnotations?: boolean | undefined; })[] | undefined; keepAlive?: boolean | undefined; overrides?: { types?: Record<"bigint" | "boolean" | "int" | "null" | "void" | "date" | "int2" | "int4" | "int8" | "smallint" | "real" | "float4" | "float" | "float8" | "numeric" | "decimal" | "smallserial" | "serial" | "bigserial" | "uuid" | "text" | "varchar" | "char" | "bpchar" | "citext" | "bit" | "bool" | "timestamp" | "timestamptz" | "time" | "timetz" | "interval" | "inet" | "cidr" | "macaddr" | "macaddr8" | "money" | "json" | "jsonb" | "bytea", string | { parameter: string | { regex: string; }; return: string; }> | Record | undefined; columns?: Record | undefined; } | undefined; nullAsUndefined?: boolean | undefined; nullAsOptional?: boolean | undefined; inferLiterals?: boolean | ("string" | "number" | "boolean")[] | undefined; enforceType?: "fix" | "suggest" | undefined; plugins?: { package: string; config?: { [x: string]: unknown; } | undefined; }[] | undefined; })[]; } | { useConfigFile: boolean; })[], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & { name: string; }; }; meta: { name: string; version: string; }; }; }; rules: { "@ts-safeql/check-sql": ["error", { useConfigFile: boolean; }]; }; }; /** * If you prefer configuring safeql via a flat config, use this config. */ connections: (connections: ConnectionInput | ConnectionInput[]) => FlatConfig.Config; }; }; export = _default;