'use client'; import { KeysOfUnion } from "./ast-utils.mjs"; import { Node } from "@pgsql/types"; //#region src/sql/nudges.d.ts type NudgeKind = "LARGE_IMPROVEMENT_FOUND" | "SMALL_IMPROVEMENT_FOUND" | "AVOID_SELECT_STAR" | "AVOID_FUNCTIONS_ON_COLUMNS_IN_WHERE" | "MISSING_WHERE_CLAUSE" | "MISSING_LIMIT_CLAUSE" | "USE_IS_NULL_NOT_EQUALS" | "AVOID_DISTINCT_WITHOUT_REASON" | "MISSING_JOIN_CONDITION" | "AVOID_LEADING_WILDCARD_LIKE" | "CONSIDER_IN_INSTEAD_OF_MANY_ORS" | "REPLACE_LARGE_IN_TUPLE_WITH_ANY_ARRAY" | "PREFER_NOT_EXISTS_OVER_NOT_IN" | "AVOID_ORDER_BY_RANDOM" | "PREFER_FILTER_OVER_CASE_IN_AGGREGATE" | "PREFER_UNION_ALL_OVER_UNION" | "NULLS_FIRST_IN_DESC_ORDER" | "AVOID_SCALAR_SUBQUERY_IN_SELECT" | "USE_EXISTS_NOT_COUNT_FOR_EXISTENCE_CHECK" | "PREFER_COUNT_STAR_OVER_COUNT_COLUMN" | "PREFER_WHERE_OVER_HAVING_FOR_NON_AGGREGATES" | "CONSIDER_JSONB_CONTAINMENT_OPERATOR" | "LIMIT_WITHOUT_ORDER_BY"; type Nudge = { kind: NudgeKind; severity: "CRITICAL" | "WARNING" | "INFO"; message: string; location?: number; }; /** * Detect nudges for a single node during AST traversal. * Returns an array of nudges found for this node. */ declare function parseNudges(node: Node, stack: (KeysOfUnion | string)[]): Nudge[]; //#endregion export { Nudge, parseNudges }; //# sourceMappingURL=nudges.d.mts.map