import { z } from 'zod';

declare const contactCreatedPayloadSchema: z.ZodObject<{
    accountId: z.ZodNullable<z.ZodString>;
    contactId: z.ZodString;
    createdBy: z.ZodString;
}, "strict", z.ZodTypeAny, {
    accountId: string | null;
    contactId: string;
    createdBy: string;
}, {
    accountId: string | null;
    contactId: string;
    createdBy: string;
}>;
declare const contactMarkedChampionPayloadSchema: z.ZodObject<{
    contactId: z.ZodString;
    opportunityId: z.ZodString;
}, "strict", z.ZodTypeAny, {
    contactId: string;
    opportunityId: string;
}, {
    contactId: string;
    opportunityId: string;
}>;
declare const contactMergedPayloadSchema: z.ZodObject<{
    mergedBy: z.ZodString;
    sourceId: z.ZodString;
    targetId: z.ZodString;
}, "strict", z.ZodTypeAny, {
    mergedBy: string;
    sourceId: string;
    targetId: string;
}, {
    mergedBy: string;
    sourceId: string;
    targetId: string;
}>;
declare const crmSyncStartedPayloadSchema: z.ZodObject<{
    runId: z.ZodString;
    source: z.ZodString;
}, "strict", z.ZodTypeAny, {
    runId: string;
    source: string;
}, {
    runId: string;
    source: string;
}>;
declare const dealCreatedPayloadSchema: z.ZodObject<{
    accountId: z.ZodString;
    dealId: z.ZodString;
    ownerId: z.ZodString;
}, "strict", z.ZodTypeAny, {
    accountId: string;
    dealId: string;
    ownerId: string;
}, {
    accountId: string;
    dealId: string;
    ownerId: string;
}>;
declare const dealStageChangedPayloadSchema: z.ZodObject<{
    dealId: z.ZodString;
    newStage: z.ZodString;
    oldStage: z.ZodString;
}, "strict", z.ZodTypeAny, {
    dealId: string;
    newStage: string;
    oldStage: string;
}, {
    dealId: string;
    newStage: string;
    oldStage: string;
}>;
declare const stripePaymentReceivedPayloadSchema: z.ZodObject<{
    amountCents: z.ZodNumber;
    currency: z.ZodString;
    customerId: z.ZodString;
    eventId: z.ZodString;
    receivedAt: z.ZodDate;
}, "strict", z.ZodTypeAny, {
    amountCents: number;
    currency: string;
    customerId: string;
    eventId: string;
    receivedAt: Date;
}, {
    amountCents: number;
    currency: string;
    customerId: string;
    eventId: string;
    receivedAt: Date;
}>;
declare const webhookOutboundContactSyncPayloadSchema: z.ZodObject<{
    contactId: z.ZodString;
    occurredAt: z.ZodDate;
    operation: z.ZodString;
}, "strict", z.ZodTypeAny, {
    contactId: string;
    occurredAt: Date;
    operation: string;
}, {
    contactId: string;
    occurredAt: Date;
    operation: string;
}>;
declare const eventPayloadSchemas: {
    readonly contact_created: z.ZodObject<{
        accountId: z.ZodNullable<z.ZodString>;
        contactId: z.ZodString;
        createdBy: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        accountId: string | null;
        contactId: string;
        createdBy: string;
    }, {
        accountId: string | null;
        contactId: string;
        createdBy: string;
    }>;
    readonly contact_marked_champion: z.ZodObject<{
        contactId: z.ZodString;
        opportunityId: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        contactId: string;
        opportunityId: string;
    }, {
        contactId: string;
        opportunityId: string;
    }>;
    readonly contact_merged: z.ZodObject<{
        mergedBy: z.ZodString;
        sourceId: z.ZodString;
        targetId: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        mergedBy: string;
        sourceId: string;
        targetId: string;
    }, {
        mergedBy: string;
        sourceId: string;
        targetId: string;
    }>;
    readonly crm_sync_started: z.ZodObject<{
        runId: z.ZodString;
        source: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        runId: string;
        source: string;
    }, {
        runId: string;
        source: string;
    }>;
    readonly deal_created: z.ZodObject<{
        accountId: z.ZodString;
        dealId: z.ZodString;
        ownerId: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        accountId: string;
        dealId: string;
        ownerId: string;
    }, {
        accountId: string;
        dealId: string;
        ownerId: string;
    }>;
    readonly deal_stage_changed: z.ZodObject<{
        dealId: z.ZodString;
        newStage: z.ZodString;
        oldStage: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        dealId: string;
        newStage: string;
        oldStage: string;
    }, {
        dealId: string;
        newStage: string;
        oldStage: string;
    }>;
    readonly stripe_payment_received: z.ZodObject<{
        amountCents: z.ZodNumber;
        currency: z.ZodString;
        customerId: z.ZodString;
        eventId: z.ZodString;
        receivedAt: z.ZodDate;
    }, "strict", z.ZodTypeAny, {
        amountCents: number;
        currency: string;
        customerId: string;
        eventId: string;
        receivedAt: Date;
    }, {
        amountCents: number;
        currency: string;
        customerId: string;
        eventId: string;
        receivedAt: Date;
    }>;
    readonly webhook_outbound_contact_sync: z.ZodObject<{
        contactId: z.ZodString;
        occurredAt: z.ZodDate;
        operation: z.ZodString;
    }, "strict", z.ZodTypeAny, {
        contactId: string;
        occurredAt: Date;
        operation: string;
    }, {
        contactId: string;
        occurredAt: Date;
        operation: string;
    }>;
};

export { contactCreatedPayloadSchema, contactMarkedChampionPayloadSchema, contactMergedPayloadSchema, crmSyncStartedPayloadSchema, dealCreatedPayloadSchema, dealStageChangedPayloadSchema, eventPayloadSchemas, stripePaymentReceivedPayloadSchema, webhookOutboundContactSyncPayloadSchema };
