import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * The feedback value. For single selection of multiple choice, the value should be an array of strings. For `correction`, the value should be a string.
 */
export type Value = string | number | Array<string>;
export declare const Product: {
    readonly Remoteconfigs: "remoteconfigs";
    readonly Deployments: "deployments";
    readonly Experiments: "experiments";
    readonly Playgrounds: "playgrounds";
    readonly Spreadsheets: "spreadsheets";
    readonly SpreadsheetRun: "spreadsheet_run";
    readonly LlmEvaluator: "llm_evaluator";
    readonly Knowledge: "knowledge";
    readonly Router: "router";
    readonly Workflows: "workflows";
    readonly ExternalEvents: "external_events";
    readonly Agents: "agents";
    readonly MemoryStores: "memory-stores";
    readonly Generic: "generic";
    readonly Evaluators: "evaluators";
    readonly Otel: "otel";
    readonly AiChat: "ai-chat";
};
export type Product = ClosedEnum<typeof Product>;
export type PostV2FeedbackRequestBody = {
    /**
     * Unique identifier for the feedback
     */
    id?: string | undefined;
    /**
     * A string describing the specific property or aspect rated.
     */
    field: string;
    /**
     * The feedback value. For single selection of multiple choice, the value should be an array of strings. For `correction`, the value should be a string.
     */
    value: string | number | Array<string>;
    /**
     * The id returned by the [`get_config`](https://docs.orq.ai/reference/deployments/get-config) or [`invoke`](https://docs.orq.ai/reference/deployments/invoke) endpoints
     */
    traceId: string;
    product?: Product | undefined;
};
/**
 * The feedback value. For single selection of multiple choice, the value should be an array of strings. For `correction`, the value should be a string.
 */
export type PostV2FeedbackValue = string | number | Array<string>;
export declare const PostV2FeedbackProduct: {
    readonly Remoteconfigs: "remoteconfigs";
    readonly Deployments: "deployments";
    readonly Experiments: "experiments";
    readonly Playgrounds: "playgrounds";
    readonly Spreadsheets: "spreadsheets";
    readonly SpreadsheetRun: "spreadsheet_run";
    readonly LlmEvaluator: "llm_evaluator";
    readonly Knowledge: "knowledge";
    readonly Router: "router";
    readonly Workflows: "workflows";
    readonly ExternalEvents: "external_events";
    readonly Agents: "agents";
    readonly MemoryStores: "memory-stores";
    readonly Generic: "generic";
    readonly Evaluators: "evaluators";
    readonly Otel: "otel";
    readonly AiChat: "ai-chat";
};
export type PostV2FeedbackProduct = ClosedEnum<typeof PostV2FeedbackProduct>;
/**
 * Event has been dispatched to delete the feedback
 */
export type PostV2FeedbackResponseBody = {
    /**
     * Unique identifier for the feedback
     */
    id?: string | undefined;
    /**
     * A string describing the specific property or aspect rated.
     */
    property: string;
    /**
     * The feedback value. For single selection of multiple choice, the value should be an array of strings. For `correction`, the value should be a string.
     */
    value: string | number | Array<string>;
    /**
     * The id returned by the [`get_config`](https://docs.orq.ai/reference/deployments/get-config) or [`invoke`](https://docs.orq.ai/reference/deployments/invoke) endpoints
     */
    traceId: string;
    product: PostV2FeedbackProduct;
};
/** @internal */
export type Value$Outbound = string | number | Array<string>;
/** @internal */
export declare const Value$outboundSchema: z.ZodType<Value$Outbound, z.ZodTypeDef, Value>;
export declare function valueToJSON(value: Value): string;
/** @internal */
export declare const Product$outboundSchema: z.ZodNativeEnum<typeof Product>;
/** @internal */
export type PostV2FeedbackRequestBody$Outbound = {
    id?: string | undefined;
    property: string;
    value: string | number | Array<string>;
    trace_id: string;
    product: string;
};
/** @internal */
export declare const PostV2FeedbackRequestBody$outboundSchema: z.ZodType<PostV2FeedbackRequestBody$Outbound, z.ZodTypeDef, PostV2FeedbackRequestBody>;
export declare function postV2FeedbackRequestBodyToJSON(postV2FeedbackRequestBody: PostV2FeedbackRequestBody): string;
/** @internal */
export declare const PostV2FeedbackValue$inboundSchema: z.ZodType<PostV2FeedbackValue, z.ZodTypeDef, unknown>;
export declare function postV2FeedbackValueFromJSON(jsonString: string): SafeParseResult<PostV2FeedbackValue, SDKValidationError>;
/** @internal */
export declare const PostV2FeedbackProduct$inboundSchema: z.ZodNativeEnum<typeof PostV2FeedbackProduct>;
/** @internal */
export declare const PostV2FeedbackResponseBody$inboundSchema: z.ZodType<PostV2FeedbackResponseBody, z.ZodTypeDef, unknown>;
export declare function postV2FeedbackResponseBodyFromJSON(jsonString: string): SafeParseResult<PostV2FeedbackResponseBody, SDKValidationError>;
//# sourceMappingURL=postv2feedback.d.ts.map