import { z } from 'zod';
export declare const WebhookDestinationTypeSchema: z.ZodEnum<{
    url: "url";
}>;
export type WebhookDestinationType = z.infer<typeof WebhookDestinationTypeSchema>;
export declare const WebhookDeliveryStatusSchema: z.ZodEnum<{
    success: "success";
    pending: "pending";
    failed: "failed";
}>;
export type WebhookDeliveryStatus = z.infer<typeof WebhookDeliveryStatusSchema>;
export declare const WebhookSchema: z.ZodObject<{
    id: z.ZodString;
    created_at: z.ZodString;
    updated_at: z.ZodString;
    created_by: z.ZodString;
    name: z.ZodString;
    description: z.ZodNullable<z.ZodString>;
    url: z.ZodOptional<z.ZodString>;
    internal: z.ZodBoolean;
    metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export type Webhook = z.infer<typeof WebhookSchema>;
export declare const WebhookDestinationSchema: z.ZodObject<{
    id: z.ZodString;
    created_at: z.ZodString;
    updated_at: z.ZodString;
    created_by: z.ZodString;
    webhook_id: z.ZodString;
    type: z.ZodEnum<{
        url: "url";
    }>;
    config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
    internal: z.ZodBoolean;
    metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export type WebhookDestination = z.infer<typeof WebhookDestinationSchema>;
export declare const WebhookReceiptSchema: z.ZodObject<{
    id: z.ZodString;
    date: z.ZodString;
    webhook_id: z.ZodString;
    headers: z.ZodRecord<z.ZodString, z.ZodString>;
    payload: z.ZodUnknown;
}, z.core.$strip>;
export type WebhookReceipt = z.infer<typeof WebhookReceiptSchema>;
export declare const WebhookDeliverySchema: z.ZodObject<{
    id: z.ZodString;
    date: z.ZodString;
    webhook_id: z.ZodString;
    webhook_destination_id: z.ZodString;
    webhook_receipt_id: z.ZodString;
    status: z.ZodEnum<{
        success: "success";
        pending: "pending";
        failed: "failed";
    }>;
    retries: z.ZodNumber;
    error: z.ZodNullable<z.ZodString>;
    response: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export type WebhookDelivery = z.infer<typeof WebhookDeliverySchema>;
export declare const WebhookAnalyticsGranularitySchema: z.ZodEnum<{
    minute: "minute";
    hour: "hour";
    day: "day";
}>;
export type WebhookAnalyticsGranularity = z.infer<typeof WebhookAnalyticsGranularitySchema>;
export declare const WebhookAnalyticsOptionsSchema: z.ZodObject<{
    start: z.ZodOptional<z.ZodString>;
    end: z.ZodOptional<z.ZodString>;
    granularity: z.ZodOptional<z.ZodEnum<{
        minute: "minute";
        hour: "hour";
        day: "day";
    }>>;
    orgId: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type WebhookAnalyticsOptions = z.infer<typeof WebhookAnalyticsOptionsSchema>;
export declare const WebhookTimePeriodSchema: z.ZodObject<{
    start: z.ZodString;
    end: z.ZodString;
    granularity: z.ZodOptional<z.ZodEnum<{
        minute: "minute";
        hour: "hour";
        day: "day";
    }>>;
}, z.core.$strip>;
export type WebhookTimePeriod = z.infer<typeof WebhookTimePeriodSchema>;
export declare const WebhookAnalyticsSummarySchema: z.ZodObject<{
    total_received: z.ZodNumber;
    total_delivered: z.ZodNumber;
    total_failed: z.ZodNumber;
}, z.core.$strip>;
export type WebhookAnalyticsSummary = z.infer<typeof WebhookAnalyticsSummarySchema>;
export declare const WebhookOrgAnalyticsSchema: z.ZodObject<{
    period: z.ZodObject<{
        start: z.ZodString;
        end: z.ZodString;
        granularity: z.ZodOptional<z.ZodEnum<{
            minute: "minute";
            hour: "hour";
            day: "day";
        }>>;
    }, z.core.$strip>;
    summary: z.ZodObject<{
        total_received: z.ZodNumber;
        total_delivered: z.ZodNumber;
        total_failed: z.ZodNumber;
    }, z.core.$strip>;
}, z.core.$strip>;
export type WebhookOrgAnalytics = z.infer<typeof WebhookOrgAnalyticsSchema>;
export declare const WebhookTimeSeriesPointSchema: z.ZodObject<{
    timestamp: z.ZodString;
    received: z.ZodNumber;
    delivered: z.ZodNumber;
    failed: z.ZodNumber;
}, z.core.$strip>;
export type WebhookTimeSeriesPoint = z.infer<typeof WebhookTimeSeriesPointSchema>;
export declare const WebhookTimeSeriesDataSchema: z.ZodObject<{
    period: z.ZodObject<{
        start: z.ZodString;
        end: z.ZodString;
        granularity: z.ZodOptional<z.ZodEnum<{
            minute: "minute";
            hour: "hour";
            day: "day";
        }>>;
    }, z.core.$strip>;
    series: z.ZodArray<z.ZodObject<{
        timestamp: z.ZodString;
        received: z.ZodNumber;
        delivered: z.ZodNumber;
        failed: z.ZodNumber;
    }, z.core.$strip>>;
}, z.core.$strip>;
export type WebhookTimeSeriesData = z.infer<typeof WebhookTimeSeriesDataSchema>;
export declare const WebhookApiOptionsSchema: z.ZodObject<{
    orgId: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type WebhookApiOptions = z.infer<typeof WebhookApiOptionsSchema>;
export declare const CreateWebhookRequestSchema: z.ZodObject<{
    name: z.ZodString;
    description: z.ZodOptional<z.ZodString>;
    internal: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export type CreateWebhookRequest = z.infer<typeof CreateWebhookRequestSchema>;
export declare const UpdateWebhookRequestSchema: z.ZodObject<{
    name: z.ZodString;
    description: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type UpdateWebhookRequest = z.infer<typeof UpdateWebhookRequestSchema>;
export declare const CreateWebhookDestinationRequestSchema: z.ZodObject<{
    type: z.ZodEnum<{
        url: "url";
    }>;
    config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
}, z.core.$strip>;
export type CreateWebhookDestinationRequest = z.infer<typeof CreateWebhookDestinationRequestSchema>;
export declare const UpdateWebhookDestinationRequestSchema: z.ZodObject<{
    config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export type UpdateWebhookDestinationRequest = z.infer<typeof UpdateWebhookDestinationRequestSchema>;
export declare const PaginationRequestSchema: z.ZodObject<{
    limit: z.ZodOptional<z.ZodNumber>;
    offset: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export type PaginationRequest = z.infer<typeof PaginationRequestSchema>;
export declare const ListWebhooksRequestSchema: z.ZodObject<{
    limit: z.ZodOptional<z.ZodNumber>;
    offset: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export type ListWebhooksRequest = z.infer<typeof ListWebhooksRequestSchema>;
export declare const ListWebhookReceiptsRequestSchema: z.ZodObject<{
    limit: z.ZodOptional<z.ZodNumber>;
    offset: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export type ListWebhookReceiptsRequest = z.infer<typeof ListWebhookReceiptsRequestSchema>;
export declare const ListWebhookDeliveriesRequestSchema: z.ZodObject<{
    limit: z.ZodOptional<z.ZodNumber>;
    offset: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export type ListWebhookDeliveriesRequest = z.infer<typeof ListWebhookDeliveriesRequestSchema>;
//# sourceMappingURL=types.d.ts.map