import { Type } from "@earendil-works/pi-ai"; export declare const nullableString: () => Type.TOptional>; export declare const positiveInteger: () => Type.TOptional; export declare const historyRole: Type.TUnion<[Type.TLiteral<"user">, Type.TLiteral<"assistant">, Type.TLiteral<"tool">, Type.TLiteral<"context">]>; export declare const historyRoles: () => Type.TOptional, Type.TLiteral<"assistant">, Type.TLiteral<"tool">, Type.TLiteral<"context">]>>>; /** Search query parameter: one literal, or several literals combined with OR. */ export declare const searchQuery: () => Type.TUnion<[Type.TString, Type.TArray]>; /** * Normalize a search `query` parameter into the literal needles to match. * A bare string is a one-element list, so single-query behavior is unchanged. * An empty list, a non-string element, or an empty string is refused rather than silently * searching for nothing: those are argument errors, not empty result sets. An empty string * matches every line and every item, so it can never be what the caller meant. */ export declare function searchQueries(query: unknown): string[];