import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import * as components from "../components/index.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * The format to return the embeddings in. Can be either float or base64.
 */
export declare const EncodingFormat: {
    readonly Float: "float";
    readonly Base64: "base64";
};
/**
 * The format to return the embeddings in. Can be either float or base64.
 */
export type EncodingFormat = ClosedEnum<typeof EncodingFormat>;
export type Input2 = string | Array<number>;
/**
 * Input text to embed, encoded as a string or array of tokens.
 */
export type CreateEmbeddingInput = string | Array<string | Array<number>>;
export type CreateEmbeddingRequestBody = {
    cache?: components.EmbeddingCacheConfig | undefined;
    /**
     * The number of dimensions the resulting output embeddings should have.
     */
    dimensions?: number | undefined;
    /**
     * The format to return the embeddings in. Can be either float or base64.
     */
    encodingFormat?: EncodingFormat | undefined;
    /**
     * Array of fallback models to use if primary model fails.
     */
    fallbacks?: Array<components.FallbackConfig> | null | undefined;
    /**
     * Input text to embed, encoded as a string or array of tokens.
     */
    input: string | Array<string | Array<number>>;
    loadBalancer?: components.EmbeddingLoadBalancerConfig | undefined;
    /**
     * ID of the model to use.
     */
    model: string;
    /**
     * The name to display on the trace. If not specified, the default system name will be used.
     */
    name?: string | undefined;
    orq?: components.EmbeddingOrqParams | undefined;
    retry?: components.EmbeddingRetryConfig | undefined;
    timeout?: components.EmbeddingTimeoutConfig | undefined;
    /**
     * A unique identifier representing your end-user.
     */
    user?: string | undefined;
};
/**
 * Always "list".
 */
export declare const CreateEmbeddingObject: {
    readonly List: "list";
};
/**
 * Always "list".
 */
export type CreateEmbeddingObject = ClosedEnum<typeof CreateEmbeddingObject>;
/**
 * Returns the embedding vector.
 */
export type CreateEmbeddingResponseBody = {
    /**
     * List of embedding objects.
     */
    data: Array<components.PublicEmbeddingData> | null;
    /**
     * ID of the model used.
     */
    model: string;
    /**
     * Always "list".
     */
    object: CreateEmbeddingObject;
    usage: components.PublicEmbeddingUsage;
};
/** @internal */
export declare const EncodingFormat$outboundSchema: z.ZodNativeEnum<typeof EncodingFormat>;
/** @internal */
export type Input2$Outbound = string | Array<number>;
/** @internal */
export declare const Input2$outboundSchema: z.ZodType<Input2$Outbound, z.ZodTypeDef, Input2>;
export declare function input2ToJSON(input2: Input2): string;
/** @internal */
export type CreateEmbeddingInput$Outbound = string | Array<string | Array<number>>;
/** @internal */
export declare const CreateEmbeddingInput$outboundSchema: z.ZodType<CreateEmbeddingInput$Outbound, z.ZodTypeDef, CreateEmbeddingInput>;
export declare function createEmbeddingInputToJSON(createEmbeddingInput: CreateEmbeddingInput): string;
/** @internal */
export type CreateEmbeddingRequestBody$Outbound = {
    cache?: components.EmbeddingCacheConfig$Outbound | undefined;
    dimensions?: number | undefined;
    encoding_format?: string | undefined;
    fallbacks?: Array<components.FallbackConfig$Outbound> | null | undefined;
    input: string | Array<string | Array<number>>;
    load_balancer?: components.EmbeddingLoadBalancerConfig$Outbound | undefined;
    model: string;
    name?: string | undefined;
    orq?: components.EmbeddingOrqParams$Outbound | undefined;
    retry?: components.EmbeddingRetryConfig$Outbound | undefined;
    timeout?: components.EmbeddingTimeoutConfig$Outbound | undefined;
    user?: string | undefined;
};
/** @internal */
export declare const CreateEmbeddingRequestBody$outboundSchema: z.ZodType<CreateEmbeddingRequestBody$Outbound, z.ZodTypeDef, CreateEmbeddingRequestBody>;
export declare function createEmbeddingRequestBodyToJSON(createEmbeddingRequestBody: CreateEmbeddingRequestBody): string;
/** @internal */
export declare const CreateEmbeddingObject$inboundSchema: z.ZodNativeEnum<typeof CreateEmbeddingObject>;
/** @internal */
export declare const CreateEmbeddingResponseBody$inboundSchema: z.ZodType<CreateEmbeddingResponseBody, z.ZodTypeDef, unknown>;
export declare function createEmbeddingResponseBodyFromJSON(jsonString: string): SafeParseResult<CreateEmbeddingResponseBody, SDKValidationError>;
//# sourceMappingURL=createembedding.d.ts.map