import { ZodSchemaType } from '@contractspec/lib.schema';
import * as z from 'zod';
declare const PatchChangeTypeSchema: z.ZodEnum<{
    other: "other";
    add_field: "add_field";
    remove_field: "remove_field";
    rename_field: "rename_field";
    add_event: "add_event";
    update_event: "update_event";
    add_operation: "add_operation";
    update_operation: "update_operation";
    update_form: "update_form";
    update_policy: "update_policy";
    add_enum_value: "add_enum_value";
    remove_enum_value: "remove_enum_value";
}>;
export type PatchChangeType = z.infer<typeof PatchChangeTypeSchema>;
declare const PatchChangeSchema: z.ZodObject<{
    type: z.ZodEnum<{
        other: "other";
        add_field: "add_field";
        remove_field: "remove_field";
        rename_field: "rename_field";
        add_event: "add_event";
        update_event: "update_event";
        add_operation: "add_operation";
        update_operation: "update_operation";
        update_form: "update_form";
        update_policy: "update_policy";
        add_enum_value: "add_enum_value";
        remove_enum_value: "remove_enum_value";
    }>;
    target: z.ZodString;
    detail: z.ZodString;
}, z.core.$strip>;
export declare const PatchChangeModel: ZodSchemaType<z.ZodObject<{
    type: z.ZodEnum<{
        other: "other";
        add_field: "add_field";
        remove_field: "remove_field";
        rename_field: "rename_field";
        add_event: "add_event";
        update_event: "update_event";
        add_operation: "add_operation";
        update_operation: "update_operation";
        update_form: "update_form";
        update_policy: "update_policy";
        add_enum_value: "add_enum_value";
        remove_enum_value: "remove_enum_value";
    }>;
    target: z.ZodString;
    detail: z.ZodString;
}, z.core.$strip>>;
export type PatchChange = z.infer<typeof PatchChangeSchema>;
declare const ContractPatchIntentSchema: z.ZodObject<{
    featureKey: z.ZodString;
    changes: z.ZodArray<z.ZodObject<{
        type: z.ZodEnum<{
            other: "other";
            add_field: "add_field";
            remove_field: "remove_field";
            rename_field: "rename_field";
            add_event: "add_event";
            update_event: "update_event";
            add_operation: "add_operation";
            update_operation: "update_operation";
            update_form: "update_form";
            update_policy: "update_policy";
            add_enum_value: "add_enum_value";
            remove_enum_value: "remove_enum_value";
        }>;
        target: z.ZodString;
        detail: z.ZodString;
    }, z.core.$strip>>;
    acceptanceCriteria: z.ZodArray<z.ZodString>;
}, z.core.$strip>;
export declare const ContractPatchIntentModel: ZodSchemaType<z.ZodObject<{
    featureKey: z.ZodString;
    changes: z.ZodArray<z.ZodObject<{
        type: z.ZodEnum<{
            other: "other";
            add_field: "add_field";
            remove_field: "remove_field";
            rename_field: "rename_field";
            add_event: "add_event";
            update_event: "update_event";
            add_operation: "add_operation";
            update_operation: "update_operation";
            update_form: "update_form";
            update_policy: "update_policy";
            add_enum_value: "add_enum_value";
            remove_enum_value: "remove_enum_value";
        }>;
        target: z.ZodString;
        detail: z.ZodString;
    }, z.core.$strip>>;
    acceptanceCriteria: z.ZodArray<z.ZodString>;
}, z.core.$strip>>;
export type ContractPatchIntent = z.infer<typeof ContractPatchIntentSchema>;
export {};
