export * from './service.ts';
export * from './types.ts';
export { WebhookDeliveryNotFoundError, WebhookDestinationNotFoundError, WebhookError, WebhookNotFoundError, WebhookReceiptNotFoundError, } from './errors.ts';
import { type CreateWebhookParams, type UpdateWebhookParams, type CreateWebhookDestinationParams, type WebhookCreateResult, type WebhookListResult, type WebhookGetResult, type UpdateWebhookResult, type CreateDestinationResult, type ListDestinationsResult, type WebhookReceiptListResult, type WebhookDeliveryListResult } from './service.ts';
import type { WebhookOrgAnalytics, WebhookReceipt } from './types.ts';
import { type Logger } from '@agentuity/client';
import { z } from 'zod';
export declare const WebhookClientOptionsSchema: z.ZodObject<{
    apiKey: z.ZodOptional<z.ZodString>;
    url: z.ZodOptional<z.ZodString>;
    orgId: z.ZodOptional<z.ZodString>;
    logger: z.ZodOptional<z.ZodCustom<Logger, Logger>>;
}, z.core.$strip>;
export type WebhookClientOptions = z.infer<typeof WebhookClientOptionsSchema>;
export declare class WebhookClient {
    #private;
    constructor(options?: WebhookClientOptions);
    create(params: CreateWebhookParams): Promise<WebhookCreateResult>;
    list(params?: {
        limit?: number;
        offset?: number;
    }): Promise<WebhookListResult>;
    get(webhookId: string): Promise<WebhookGetResult>;
    update(webhookId: string, params: UpdateWebhookParams): Promise<UpdateWebhookResult>;
    delete(webhookId: string): Promise<void>;
    createDestination(webhookId: string, params: CreateWebhookDestinationParams): Promise<CreateDestinationResult>;
    listDestinations(webhookId: string): Promise<ListDestinationsResult>;
    deleteDestination(webhookId: string, destinationId: string): Promise<void>;
    listReceipts(webhookId: string, params?: {
        limit?: number;
        offset?: number;
    }): Promise<WebhookReceiptListResult>;
    getReceipt(webhookId: string, receiptId: string): Promise<WebhookReceipt>;
    listDeliveries(webhookId: string, params?: {
        limit?: number;
        offset?: number;
    }): Promise<WebhookDeliveryListResult>;
    retryDelivery(webhookId: string, deliveryId: string): Promise<void>;
    getOrgAnalytics(options?: {
        start?: string;
        end?: string;
        granularity?: string;
    }): Promise<WebhookOrgAnalytics>;
    getOrgTimeSeries(options?: {
        start?: string;
        end?: string;
        granularity?: string;
    }): Promise<{
        period: {
            start: string;
            end: string;
            granularity?: string;
        };
        series: Array<{
            timestamp: string;
            received: number;
            delivered: number;
            failed: number;
        }>;
    }>;
}
//# sourceMappingURL=index.d.ts.map