import type { Schema, SchemaValue } from "./schema.js"; import type { Validator } from "./validator.js"; import type { Merger } from "./merger.js"; /** * Detects `select` schema * - Schema contains `enum` property * - Or schemas in `oneOf || anyOf` are `constant` * @example * * ```json * { * "enum": [ * "foo", * "bar" * ] * } * ``` * * @example * * ```json * { * "oneOf": [ * { "const": "foo" }, * { "enum": ["bar"] } * ] * } * ``` */ export declare function isSelect(validator: Validator, merger: Merger, theSchema: Schema, rootSchema: Schema): boolean; export declare function getSelectOptionValues({ enum: enumValues, oneOf, anyOf, }: Schema): SchemaValue[] | undefined; /** * Detects `multi select` schema * - Array with unique items * - Items is `select` schema * @example * * ```json * { * "type": "array", * "uniqueItems": true, * "items": { * "enum": [ * "foo", * "bar" * ] * } * } * ``` */ export declare function isMultiSelect(validator: Validator, merger: Merger, { items, uniqueItems }: Schema, rootSchema: Schema): boolean;