import { ClientSDK, RequestOptions } from "../lib/sdks.js";
import * as operations from "../models/operations/index.js";
import { PageIterator } from "../types/operations.js";
export declare class Webhooks extends ClientSDK {
    /**
     * List webhook subscriptions
     *
     * @remarks
     * List all webhook subscriptions
     */
    list(request: operations.WebhookWebhooksAllRequest, options?: RequestOptions): Promise<PageIterator<operations.WebhookWebhooksAllResponse, {
        cursor: string;
    }>>;
    /**
     * Create webhook subscription
     *
     * @remarks
     * Create a webhook subscription to receive events.
     *
     * **Delivery URL Validation**: The provided `delivery_url` will be validated synchronously by sending an HTTP POST request with an HMAC signature. If validation fails (network error, timeout, non-2xx response), the webhook will still be created but with `status: "disabled"` and `disabled_reason: "delivery_url_validation_failed"`.
     *
     * **Important**: Always check the `status` and `disabled_reason` fields in the response to ensure the webhook is active.
     */
    create(request: operations.WebhookWebhooksAddRequest, options?: RequestOptions): Promise<operations.WebhookWebhooksAddResponse>;
    /**
     * Get webhook subscription
     *
     * @remarks
     * Get the webhook subscription details
     */
    get(request: operations.WebhookWebhooksOneRequest, options?: RequestOptions): Promise<operations.WebhookWebhooksOneResponse>;
    /**
     * Update webhook subscription
     *
     * @remarks
     * Update a webhook subscription.
     *
     * **Delivery URL Validation**: When updating the `delivery_url`, it will be validated synchronously by sending an HTTP POST request with an HMAC signature. If validation fails (network error, timeout, non-2xx response), the webhook will still be updated but with `status: "disabled"` and `disabled_reason: "delivery_url_validation_failed"`. Validation only occurs when the URL is changed.
     *
     * **Important**: Always check the `status` and `disabled_reason` fields in the response to ensure the webhook is active.
     */
    update(request: operations.WebhookWebhooksUpdateRequest, options?: RequestOptions): Promise<operations.WebhookWebhooksUpdateResponse>;
    /**
     * Delete webhook subscription
     *
     * @remarks
     * Delete a webhook subscription
     */
    delete(request: operations.WebhookWebhooksDeleteRequest, options?: RequestOptions): Promise<operations.WebhookWebhooksDeleteResponse>;
}
//# sourceMappingURL=webhooks.d.ts.map