/**
 * SDK Constants
 *
 * This module contains shared constants used throughout the SDK.
 */
/**
 * Base URL for Zapier API endpoints
 */
export declare const ZAPIER_BASE_URL: string;
/**
 * Calling service name for telemetry headers.
 *
 * Read lazily so tests can stub the env var after module import.
 */
export declare function getZapierSdkService(): string | undefined;
/**
 * Maximum number of items that can be requested per page across all paginated functions
 */
export declare const MAX_PAGE_LIMIT = 10000;
/**
 * Default number of items per page for paginated functions
 */
export declare const DEFAULT_PAGE_SIZE = 100;
/**
 * Default timeout for action execution (in milliseconds)
 */
export declare const DEFAULT_ACTION_TIMEOUT_MS = 180000;
/**
 * Network retry configuration from environment variables
 */
export declare const ZAPIER_MAX_NETWORK_RETRIES: number;
export declare const ZAPIER_MAX_NETWORK_RETRY_DELAY_MS: number;
/**
 * Upper bound on the concurrency cap. Anything beyond this is almost
 * certainly a configuration mistake and would also bypass IEEE 754 safe
 * integer range for inputs like "9".repeat(309), which would silently
 * become Infinity and disable throttling.
 */
export declare const MAX_CONCURRENCY_LIMIT = 10000;
export declare function parseConcurrencyEnvVar(name: string): number | undefined;
/**
 * Default cap on concurrent in-flight HTTP requests per SDK instance.
 * Beyond this, requests queue (FIFO) until a slot frees up. Sized for
 * production workloads that fan out hundreds of action runs in parallel;
 * lower it when running against a smaller backend or to be more
 * conservative. Pass `Infinity` to disable.
 */
export declare const ZAPIER_MAX_CONCURRENT_REQUESTS: number;
/**
 * Approval flow behavior from environment variable.
 * - "poll": Create the approval, open the URL in a browser, poll until
 *   resolved, and retry the original request on success.
 * - "throw": Create the approval and throw a ZapierApprovalError immediately
 *   with the approval URL so the caller can surface it.
 * - "disabled": Throw a ZapierApprovalError on approval-required responses
 *   without creating an approval.
 *
 * This parser only reflects the env var value. If unset, callers should fall
 * back to getZapierDefaultApprovalMode().
 *
 * Read lazily so tests can set env vars after module import.
 */
export declare function getZapierApprovalMode(): "disabled" | "poll" | "throw" | undefined;
/**
 * Returns the default approval mode based on whether the process is running in
 * an interactive terminal. If both stdin and stdout are TTYs the user can act
 * on an approval URL immediately, so "poll" is the right default. In a
 * non-interactive context (CI, piped output) the process cannot open a browser
 * or wait for input, so "throw" hands the URL to the caller.
 */
export declare function getZapierDefaultApprovalMode(): "poll" | "throw";
/**
 * Default timeout for approval polling (10 minutes)
 */
export declare const DEFAULT_APPROVAL_TIMEOUT_MS: number;
/**
 * Default cap on chained approval retries for a single request. Multiple
 * sequential approvals can occur when more than one policy gates the same
 * action; this cap prevents a runaway loop if the server keeps returning
 * approval_required after a successful approval.
 */
export declare const DEFAULT_MAX_APPROVAL_RETRIES = 2;
//# sourceMappingURL=constants.d.ts.map