import { z } from 'zod';
/** Search type enumeration */
export declare const SearchTypeSchema: z.ZodEnum<["query", "similarity"]>;
export type SearchType = z.infer<typeof SearchTypeSchema>;
/** Search operator enumeration */
export declare const OperatorSchema: z.ZodEnum<["AND", "OR"]>;
export type Operator = z.infer<typeof OperatorSchema>;
/** Brand folder document usage */
export declare const UseBrandFolderDocSchema: z.ZodEnum<["Y", "N"]>;
export type UseBrandFolderDoc = z.infer<typeof UseBrandFolderDocSchema>;
/** Item search request params */
export declare const ItemSearchParamsSchema: z.ZodObject<{
    q: z.ZodString;
    searchType: z.ZodOptional<z.ZodEnum<["query", "similarity"]>>;
    cacheSiteId: z.ZodOptional<z.ZodString>;
    cacheTtl: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    classId5ExcludeList: z.ZodOptional<z.ZodString>;
    classId5List: z.ZodOptional<z.ZodString>;
    fields: z.ZodOptional<z.ZodString>;
    filters: z.ZodOptional<z.ZodString>;
    from: z.ZodOptional<z.ZodNumber>;
    itemCategoryUidList: z.ZodOptional<z.ZodString>;
    operator: z.ZodDefault<z.ZodOptional<z.ZodEnum<["AND", "OR"]>>>;
    parentCategoryUid: z.ZodOptional<z.ZodNumber>;
    size: z.ZodOptional<z.ZodNumber>;
    sort: z.ZodOptional<z.ZodString>;
    sourceFieldsList: z.ZodOptional<z.ZodString>;
    tags: z.ZodOptional<z.ZodString>;
    useBrandFolderDoc: z.ZodDefault<z.ZodOptional<z.ZodEnum<["Y", "N"]>>>;
}, "strip", z.ZodTypeAny, {
    q: string;
    cacheTtl: number;
    operator: "AND" | "OR";
    useBrandFolderDoc: "Y" | "N";
    sort?: string | undefined;
    searchType?: "query" | "similarity" | undefined;
    cacheSiteId?: string | undefined;
    classId5ExcludeList?: string | undefined;
    classId5List?: string | undefined;
    fields?: string | undefined;
    filters?: string | undefined;
    from?: number | undefined;
    itemCategoryUidList?: string | undefined;
    parentCategoryUid?: number | undefined;
    size?: number | undefined;
    sourceFieldsList?: string | undefined;
    tags?: string | undefined;
}, {
    q: string;
    sort?: string | undefined;
    searchType?: "query" | "similarity" | undefined;
    cacheTtl?: number | undefined;
    cacheSiteId?: string | undefined;
    classId5ExcludeList?: string | undefined;
    classId5List?: string | undefined;
    fields?: string | undefined;
    filters?: string | undefined;
    from?: number | undefined;
    itemCategoryUidList?: string | undefined;
    operator?: "AND" | "OR" | undefined;
    parentCategoryUid?: number | undefined;
    size?: number | undefined;
    sourceFieldsList?: string | undefined;
    tags?: string | undefined;
    useBrandFolderDoc?: "Y" | "N" | undefined;
}>;
export type ItemSearchParams = z.infer<typeof ItemSearchParamsSchema>;
/** Search item - key field only, passthrough for API flexibility */
export declare const SearchItemSchema: z.ZodObject<{
    invMastUid: z.ZodNumber;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
    invMastUid: z.ZodNumber;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
    invMastUid: z.ZodNumber;
}, z.ZodTypeAny, "passthrough">>;
export type SearchItem = z.infer<typeof SearchItemSchema>;
/** Item search data - passthrough for API flexibility */
export declare const ItemSearchDataSchema: z.ZodObject<{
    items: z.ZodArray<z.ZodObject<{
        invMastUid: z.ZodNumber;
    }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
        invMastUid: z.ZodNumber;
    }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
        invMastUid: z.ZodNumber;
    }, z.ZodTypeAny, "passthrough">>, "many">;
    totalResults: z.ZodNumber;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
    items: z.ZodArray<z.ZodObject<{
        invMastUid: z.ZodNumber;
    }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
        invMastUid: z.ZodNumber;
    }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
        invMastUid: z.ZodNumber;
    }, z.ZodTypeAny, "passthrough">>, "many">;
    totalResults: z.ZodNumber;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
    items: z.ZodArray<z.ZodObject<{
        invMastUid: z.ZodNumber;
    }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
        invMastUid: z.ZodNumber;
    }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
        invMastUid: z.ZodNumber;
    }, z.ZodTypeAny, "passthrough">>, "many">;
    totalResults: z.ZodNumber;
}, z.ZodTypeAny, "passthrough">>;
export type ItemSearchData = z.infer<typeof ItemSearchDataSchema>;
/** Item search response */
export declare const ItemSearchResponseSchema: z.ZodEffects<z.ZodObject<{
    count: z.ZodNumber;
    data: z.ZodObject<{
        items: z.ZodArray<z.ZodObject<{
            invMastUid: z.ZodNumber;
        }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">>, "many">;
        totalResults: z.ZodNumber;
    }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
        items: z.ZodArray<z.ZodObject<{
            invMastUid: z.ZodNumber;
        }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">>, "many">;
        totalResults: z.ZodNumber;
    }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
        items: z.ZodArray<z.ZodObject<{
            invMastUid: z.ZodNumber;
        }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">>, "many">;
        totalResults: z.ZodNumber;
    }, z.ZodTypeAny, "passthrough">>;
    message: z.ZodString;
    options: z.ZodUnion<[z.ZodArray<z.ZodUnknown, "many">, z.ZodRecord<z.ZodString, z.ZodUnknown>]>;
    params: z.ZodUnion<[z.ZodArray<z.ZodUnknown, "many">, z.ZodRecord<z.ZodString, z.ZodUnknown>]>;
    status: z.ZodNumber;
    total: z.ZodNumber;
    totalResults: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    params: Record<string, unknown> | unknown[];
    data: {
        totalResults: number;
        items: z.objectOutputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">[];
    } & {
        [k: string]: unknown;
    };
    options: Record<string, unknown> | unknown[];
    status: number;
    message: string;
    count: number;
    total: number;
    totalResults: number;
}, {
    params: Record<string, unknown> | unknown[];
    data: {
        totalResults: number;
        items: z.objectInputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">[];
    } & {
        [k: string]: unknown;
    };
    options: Record<string, unknown> | unknown[];
    status: number;
    message: string;
    count: number;
    total: number;
    totalResults: number;
}>, {
    params: Record<string, unknown> | unknown[];
    data: {
        totalResults: number;
        items: z.objectOutputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">[];
    } & {
        [k: string]: unknown;
    };
    options: Record<string, unknown> | unknown[];
    status: number;
    message: string;
    count: number;
    total: number;
    totalResults: number;
}, {
    params: Record<string, unknown> | unknown[];
    data: {
        totalResults: number;
        items: z.objectInputType<{
            invMastUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">[];
    } & {
        [k: string]: unknown;
    };
    options: Record<string, unknown> | unknown[];
    status: number;
    message: string;
    count: number;
    total: number;
    totalResults: number;
}>;
export type ItemSearchResponse = z.infer<typeof ItemSearchResponseSchema>;
//# sourceMappingURL=itemSearch.d.ts.map