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";
export declare const ExecuteOn: {
    readonly Input: "input";
    readonly Output: "output";
    readonly Both: "both";
};
export type ExecuteOn = ClosedEnum<typeof ExecuteOn>;
export type GuardrailRef = {
    executeOn: ExecuteOn;
    id: string;
    isGuardrail?: boolean | undefined;
    options?: {
        [k: string]: any;
    } | undefined;
    sampleRate?: number | undefined;
};
/** @internal */
export declare const ExecuteOn$inboundSchema: z.ZodNativeEnum<typeof ExecuteOn>;
/** @internal */
export declare const ExecuteOn$outboundSchema: z.ZodNativeEnum<typeof ExecuteOn>;
/** @internal */
export declare const GuardrailRef$inboundSchema: z.ZodType<GuardrailRef, z.ZodTypeDef, unknown>;
/** @internal */
export type GuardrailRef$Outbound = {
    execute_on: string;
    id: string;
    is_guardrail?: boolean | undefined;
    options?: {
        [k: string]: any;
    } | undefined;
    sample_rate?: number | undefined;
};
/** @internal */
export declare const GuardrailRef$outboundSchema: z.ZodType<GuardrailRef$Outbound, z.ZodTypeDef, GuardrailRef>;
export declare function guardrailRefToJSON(guardrailRef: GuardrailRef): string;
export declare function guardrailRefFromJSON(jsonString: string): SafeParseResult<GuardrailRef, SDKValidationError>;
//# sourceMappingURL=guardrailref.d.ts.map