import * as z from "zod";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type VisualSearchParameters3 = {
    /**
     * A textual description to find visually similar images
     */
    text: string;
    /**
     * The minimum similarity score (between 0 and 1.0) that a resource must have to be included in the response
     */
    threshold?: number | undefined;
};
export type VisualSearchParameters2 = {
    /**
     * The asset ID of an existing image to use as the source for finding visually similar images
     */
    imageAssetId: string;
    /**
     * The minimum similarity score (between 0 and 1.0) that a resource must have to be included in the response
     */
    threshold?: number | undefined;
};
export type VisualSearchParameters1 = {
    /**
     * The URL of an image to use as the source for finding visually similar images
     */
    imageUrl: string;
    /**
     * The minimum similarity score (between 0 and 1.0) that a resource must have to be included in the response
     */
    threshold?: number | undefined;
};
/**
 * Parameters for visual search operations
 */
export type VisualSearchParametersUnion = VisualSearchParameters1 | VisualSearchParameters2 | VisualSearchParameters3;
/** @internal */
export declare const VisualSearchParameters3$inboundSchema: z.ZodType<VisualSearchParameters3, z.ZodTypeDef, unknown>;
/** @internal */
export type VisualSearchParameters3$Outbound = {
    text: string;
    threshold?: number | undefined;
};
/** @internal */
export declare const VisualSearchParameters3$outboundSchema: z.ZodType<VisualSearchParameters3$Outbound, z.ZodTypeDef, VisualSearchParameters3>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace VisualSearchParameters3$ {
    /** @deprecated use `VisualSearchParameters3$inboundSchema` instead. */
    const inboundSchema: z.ZodType<VisualSearchParameters3, z.ZodTypeDef, unknown>;
    /** @deprecated use `VisualSearchParameters3$outboundSchema` instead. */
    const outboundSchema: z.ZodType<VisualSearchParameters3$Outbound, z.ZodTypeDef, VisualSearchParameters3>;
    /** @deprecated use `VisualSearchParameters3$Outbound` instead. */
    type Outbound = VisualSearchParameters3$Outbound;
}
export declare function visualSearchParameters3ToJSON(visualSearchParameters3: VisualSearchParameters3): string;
export declare function visualSearchParameters3FromJSON(jsonString: string): SafeParseResult<VisualSearchParameters3, SDKValidationError>;
/** @internal */
export declare const VisualSearchParameters2$inboundSchema: z.ZodType<VisualSearchParameters2, z.ZodTypeDef, unknown>;
/** @internal */
export type VisualSearchParameters2$Outbound = {
    image_asset_id: string;
    threshold?: number | undefined;
};
/** @internal */
export declare const VisualSearchParameters2$outboundSchema: z.ZodType<VisualSearchParameters2$Outbound, z.ZodTypeDef, VisualSearchParameters2>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace VisualSearchParameters2$ {
    /** @deprecated use `VisualSearchParameters2$inboundSchema` instead. */
    const inboundSchema: z.ZodType<VisualSearchParameters2, z.ZodTypeDef, unknown>;
    /** @deprecated use `VisualSearchParameters2$outboundSchema` instead. */
    const outboundSchema: z.ZodType<VisualSearchParameters2$Outbound, z.ZodTypeDef, VisualSearchParameters2>;
    /** @deprecated use `VisualSearchParameters2$Outbound` instead. */
    type Outbound = VisualSearchParameters2$Outbound;
}
export declare function visualSearchParameters2ToJSON(visualSearchParameters2: VisualSearchParameters2): string;
export declare function visualSearchParameters2FromJSON(jsonString: string): SafeParseResult<VisualSearchParameters2, SDKValidationError>;
/** @internal */
export declare const VisualSearchParameters1$inboundSchema: z.ZodType<VisualSearchParameters1, z.ZodTypeDef, unknown>;
/** @internal */
export type VisualSearchParameters1$Outbound = {
    image_url: string;
    threshold?: number | undefined;
};
/** @internal */
export declare const VisualSearchParameters1$outboundSchema: z.ZodType<VisualSearchParameters1$Outbound, z.ZodTypeDef, VisualSearchParameters1>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace VisualSearchParameters1$ {
    /** @deprecated use `VisualSearchParameters1$inboundSchema` instead. */
    const inboundSchema: z.ZodType<VisualSearchParameters1, z.ZodTypeDef, unknown>;
    /** @deprecated use `VisualSearchParameters1$outboundSchema` instead. */
    const outboundSchema: z.ZodType<VisualSearchParameters1$Outbound, z.ZodTypeDef, VisualSearchParameters1>;
    /** @deprecated use `VisualSearchParameters1$Outbound` instead. */
    type Outbound = VisualSearchParameters1$Outbound;
}
export declare function visualSearchParameters1ToJSON(visualSearchParameters1: VisualSearchParameters1): string;
export declare function visualSearchParameters1FromJSON(jsonString: string): SafeParseResult<VisualSearchParameters1, SDKValidationError>;
/** @internal */
export declare const VisualSearchParametersUnion$inboundSchema: z.ZodType<VisualSearchParametersUnion, z.ZodTypeDef, unknown>;
/** @internal */
export type VisualSearchParametersUnion$Outbound = VisualSearchParameters1$Outbound | VisualSearchParameters2$Outbound | VisualSearchParameters3$Outbound;
/** @internal */
export declare const VisualSearchParametersUnion$outboundSchema: z.ZodType<VisualSearchParametersUnion$Outbound, z.ZodTypeDef, VisualSearchParametersUnion>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace VisualSearchParametersUnion$ {
    /** @deprecated use `VisualSearchParametersUnion$inboundSchema` instead. */
    const inboundSchema: z.ZodType<VisualSearchParametersUnion, z.ZodTypeDef, unknown>;
    /** @deprecated use `VisualSearchParametersUnion$outboundSchema` instead. */
    const outboundSchema: z.ZodType<VisualSearchParametersUnion$Outbound, z.ZodTypeDef, VisualSearchParametersUnion>;
    /** @deprecated use `VisualSearchParametersUnion$Outbound` instead. */
    type Outbound = VisualSearchParametersUnion$Outbound;
}
export declare function visualSearchParametersUnionToJSON(visualSearchParametersUnion: VisualSearchParametersUnion): string;
export declare function visualSearchParametersUnionFromJSON(jsonString: string): SafeParseResult<VisualSearchParametersUnion, SDKValidationError>;
//# sourceMappingURL=visualsearchparametersunion.d.ts.map