/**
 * Cloudflare CERTIFICATE-AUTHORITIES API
 *
 * Generated from Cloudflare TypeScript SDK.
 * DO NOT EDIT - regenerate with: bun scripts/generate.ts --service certificate-authorities
 */
import * as Schema from "effect/Schema";
import * as API from "../client/api.js";
import * as T from "../traits.js";
import {} from "../errors.js";
export const GetHostnameAssociationRequest = 
/*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
    zoneId: Schema.String.pipe(T.HttpPath("zone_id")),
    mtlsCertificateId: Schema.optional(Schema.String).pipe(T.HttpQuery("mtls_certificate_id")),
}).pipe(T.Http({
    method: "GET",
    path: "/zones/{zone_id}/certificate_authorities/hostname_associations",
}));
export const GetHostnameAssociationResponse = 
/*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
    hostnames: Schema.optional(Schema.Union([Schema.Array(Schema.String), Schema.Null])),
}).pipe(T.ResponsePath("result"));
export const getHostnameAssociation = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
    input: GetHostnameAssociationRequest,
    output: GetHostnameAssociationResponse,
    errors: [],
}));
export const PutHostnameAssociationRequest = 
/*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
    zoneId: Schema.String.pipe(T.HttpPath("zone_id")),
    hostnames: Schema.optional(Schema.Array(Schema.String)),
    mtlsCertificateId: Schema.optional(Schema.String),
}).pipe(Schema.encodeKeys({
    hostnames: "hostnames",
    mtlsCertificateId: "mtls_certificate_id",
}), T.Http({
    method: "PUT",
    path: "/zones/{zone_id}/certificate_authorities/hostname_associations",
}));
export const PutHostnameAssociationResponse = 
/*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
    hostnames: Schema.optional(Schema.Union([Schema.Array(Schema.String), Schema.Null])),
}).pipe(T.ResponsePath("result"));
export const putHostnameAssociation = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
    input: PutHostnameAssociationRequest,
    output: PutHostnameAssociationResponse,
    errors: [],
}));
//# sourceMappingURL=certificate-authorities.js.map