import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import * as components from "../components/index.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type PolicyCreateRequestBody = {
    description?: string | undefined;
    displayName: string;
    enabled?: boolean | undefined;
    evaluators?: Array<components.EvaluatorRef> | null | undefined;
    limits?: components.Limits | undefined;
    modelsConfig?: components.ModelsConfig | undefined;
    /**
     * Optional project ID. If null/omitted, the entity is global (workspace-wide).
     */
    projectId?: string | undefined;
    retryConfig?: components.PolicyRetryConfig | undefined;
    timeout?: number | undefined;
};
/**
 * Policy created successfully
 */
export type PolicyCreateResponseBody = {
    id: string;
    createdAt: Date;
    createdById: string;
    description?: string | undefined;
    displayName: string;
    enabled: boolean;
    evaluators?: Array<components.EvaluatorRef> | null | undefined;
    limits?: components.Limits | undefined;
    modelsConfig?: components.ModelsConfig | undefined;
    projectId: string;
    retryConfig?: components.PolicyRetryConfig | undefined;
    slug: string;
    timeout: number;
    updatedAt: Date;
    updatedById: string;
};
/** @internal */
export type PolicyCreateRequestBody$Outbound = {
    description?: string | undefined;
    display_name: string;
    enabled?: boolean | undefined;
    evaluators?: Array<components.EvaluatorRef$Outbound> | null | undefined;
    limits?: components.Limits$Outbound | undefined;
    models_config?: components.ModelsConfig$Outbound | undefined;
    project_id?: string | undefined;
    retry_config?: components.PolicyRetryConfig$Outbound | undefined;
    timeout?: number | undefined;
};
/** @internal */
export declare const PolicyCreateRequestBody$outboundSchema: z.ZodType<PolicyCreateRequestBody$Outbound, z.ZodTypeDef, PolicyCreateRequestBody>;
export declare function policyCreateRequestBodyToJSON(policyCreateRequestBody: PolicyCreateRequestBody): string;
/** @internal */
export declare const PolicyCreateResponseBody$inboundSchema: z.ZodType<PolicyCreateResponseBody, z.ZodTypeDef, unknown>;
export declare function policyCreateResponseBodyFromJSON(jsonString: string): SafeParseResult<PolicyCreateResponseBody, SDKValidationError>;
//# sourceMappingURL=policycreate.d.ts.map