/**
 * Cloudflare ARGO API
 *
 * Generated from Cloudflare TypeScript SDK.
 * DO NOT EDIT - regenerate with: bun scripts/generate.ts --service argo
 */
import * as Schema from "effect/Schema";
import type * as HttpClient from "effect/unstable/http/HttpClient";
import * as API from "../client/api.ts";
import type { Credentials } from "../credentials.ts";
import { type DefaultErrors } from "../errors.ts";
declare const InvalidObjectIdentifier_base: Schema.Class<InvalidObjectIdentifier, Schema.TaggedStruct<"InvalidObjectIdentifier", {
    readonly code: Schema.Number;
    readonly message: Schema.String;
}>, import("effect/Cause").YieldableError>;
export declare class InvalidObjectIdentifier extends InvalidObjectIdentifier_base {
}
declare const NotAuthorized_base: Schema.Class<NotAuthorized, Schema.TaggedStruct<"NotAuthorized", {
    readonly code: Schema.Number;
    readonly message: Schema.String;
}>, import("effect/Cause").YieldableError>;
export declare class NotAuthorized extends NotAuthorized_base {
}
export interface GetSmartRoutingRequest {
    /** Specifies the zone associated with the API call. */
    zoneId: string;
}
export declare const GetSmartRoutingRequest: Schema.Schema<GetSmartRoutingRequest>;
export interface GetSmartRoutingResponse {
    /** Specifies the identifier of the Argo Smart Routing setting. */
    id: string;
    /** Specifies if the setting is editable. */
    editable: boolean;
    /** Specifies the enablement value of Argo Smart Routing. */
    value: "on" | "off";
    /** Specifies the time when the setting was last modified. */
    modifiedOn?: string | null;
}
export declare const GetSmartRoutingResponse: Schema.Schema<GetSmartRoutingResponse>;
export type GetSmartRoutingError = DefaultErrors | InvalidObjectIdentifier | NotAuthorized;
export declare const getSmartRouting: API.OperationMethod<GetSmartRoutingRequest, GetSmartRoutingResponse, GetSmartRoutingError, Credentials | HttpClient.HttpClient>;
export interface PatchSmartRoutingRequest {
    /** Path param: Specifies the zone associated with the API call. */
    zoneId: string;
    /** Body param: Specifies the enablement value of Argo Smart Routing. */
    value: "on" | "off";
}
export declare const PatchSmartRoutingRequest: Schema.Schema<PatchSmartRoutingRequest>;
export interface PatchSmartRoutingResponse {
    /** Specifies the identifier of the Argo Smart Routing setting. */
    id: string;
    /** Specifies if the setting is editable. */
    editable: boolean;
    /** Specifies the enablement value of Argo Smart Routing. */
    value: "on" | "off";
    /** Specifies the time when the setting was last modified. */
    modifiedOn?: string | null;
}
export declare const PatchSmartRoutingResponse: Schema.Schema<PatchSmartRoutingResponse>;
export type PatchSmartRoutingError = DefaultErrors | InvalidObjectIdentifier | NotAuthorized;
export declare const patchSmartRouting: API.OperationMethod<PatchSmartRoutingRequest, PatchSmartRoutingResponse, PatchSmartRoutingError, Credentials | HttpClient.HttpClient>;
export interface GetTieredCachingRequest {
    /** Identifier. */
    zoneId: string;
}
export declare const GetTieredCachingRequest: Schema.Schema<GetTieredCachingRequest>;
export interface GetTieredCachingResponse {
    /** The identifier of the caching setting. */
    id: "tiered_caching";
    /** Whether the setting is editable. */
    editable: boolean;
    /** Value of the Tiered Cache zone setting. */
    value: "on" | "off";
    /** Last time this setting was modified. */
    modifiedOn?: string | null;
}
export declare const GetTieredCachingResponse: Schema.Schema<GetTieredCachingResponse>;
export type GetTieredCachingError = DefaultErrors | InvalidObjectIdentifier;
export declare const getTieredCaching: API.OperationMethod<GetTieredCachingRequest, GetTieredCachingResponse, GetTieredCachingError, Credentials | HttpClient.HttpClient>;
export interface PatchTieredCachingRequest {
    /** Path param: Identifier. */
    zoneId: string;
    /** Body param: Enables Tiered Caching. */
    value: "on" | "off";
}
export declare const PatchTieredCachingRequest: Schema.Schema<PatchTieredCachingRequest>;
export interface PatchTieredCachingResponse {
    /** The identifier of the caching setting. */
    id: "tiered_caching";
    /** Whether the setting is editable. */
    editable: boolean;
    /** Value of the Tiered Cache zone setting. */
    value: "on" | "off";
    /** Last time this setting was modified. */
    modifiedOn?: string | null;
}
export declare const PatchTieredCachingResponse: Schema.Schema<PatchTieredCachingResponse>;
export type PatchTieredCachingError = DefaultErrors | InvalidObjectIdentifier;
export declare const patchTieredCaching: API.OperationMethod<PatchTieredCachingRequest, PatchTieredCachingResponse, PatchTieredCachingError, Credentials | HttpClient.HttpClient>;
export {};
//# sourceMappingURL=argo.d.ts.map