import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
import { CloudFrontServiceException as __BaseException } from "./CloudFrontServiceException";
import {
  ActiveTrustedSigners,
  Aliases,
  AliasICPRecordal,
  AnycastIpList,
  AnycastIpListCollection,
  CacheBehaviors,
  CachePolicy,
  CachePolicyConfig,
  CachePolicyList,
  CachePolicyType,
  CloudFrontOriginAccessIdentity,
  CloudFrontOriginAccessIdentityConfig,
  ContentTypeProfileConfig,
  ContinuousDeploymentPolicy,
  ContinuousDeploymentPolicyConfig,
  CustomErrorResponses,
  DefaultCacheBehavior,
  Distribution,
  DistributionConfig,
  EncryptionEntities,
  EndPoint,
  FieldLevelEncryption,
  FieldLevelEncryptionConfig,
  FieldLevelEncryptionProfile,
  FieldLevelEncryptionProfileConfig,
  FunctionConfig,
  FunctionStage,
  FunctionSummary,
  HttpVersion,
  Invalidation,
  KeyGroup,
  KeyGroupConfig,
  KeyValueStore,
  MonitoringSubscription,
  OriginAccessControl,
  OriginAccessControlConfig,
  OriginAccessControlOriginTypes,
  OriginAccessControlSigningBehaviors,
  OriginAccessControlSigningProtocols,
  OriginGroups,
  OriginProtocolPolicy,
  OriginRequestPolicy,
  OriginRequestPolicyConfig,
  Origins,
  OriginSslProtocols,
  PriceClass,
  PublicKey,
  PublicKeyConfig,
  QueryArgProfileConfig,
  RealtimeLogConfig,
  ResponseHeadersPolicyAccessControlAllowHeaders,
  ResponseHeadersPolicyAccessControlAllowMethodsValues,
  Restrictions,
  Tags,
  TrustedSigners,
  ViewerCertificate,
} from "./models_0";
export interface ResponseHeadersPolicyAccessControlAllowMethods {
  Quantity: number | undefined;
  Items: ResponseHeadersPolicyAccessControlAllowMethodsValues[] | undefined;
}
export interface ResponseHeadersPolicyAccessControlAllowOrigins {
  Quantity: number | undefined;
  Items: string[] | undefined;
}
export interface ResponseHeadersPolicyAccessControlExposeHeaders {
  Quantity: number | undefined;
  Items?: string[] | undefined;
}
export interface ResponseHeadersPolicyCorsConfig {
  AccessControlAllowOrigins:
    | ResponseHeadersPolicyAccessControlAllowOrigins
    | undefined;
  AccessControlAllowHeaders:
    | ResponseHeadersPolicyAccessControlAllowHeaders
    | undefined;
  AccessControlAllowMethods:
    | ResponseHeadersPolicyAccessControlAllowMethods
    | undefined;
  AccessControlAllowCredentials: boolean | undefined;
  AccessControlExposeHeaders?:
    | ResponseHeadersPolicyAccessControlExposeHeaders
    | undefined;
  AccessControlMaxAgeSec?: number | undefined;
  OriginOverride: boolean | undefined;
}
export interface ResponseHeadersPolicyCustomHeader {
  Header: string | undefined;
  Value: string | undefined;
  Override: boolean | undefined;
}
export interface ResponseHeadersPolicyCustomHeadersConfig {
  Quantity: number | undefined;
  Items?: ResponseHeadersPolicyCustomHeader[] | undefined;
}
export interface ResponseHeadersPolicyRemoveHeader {
  Header: string | undefined;
}
export interface ResponseHeadersPolicyRemoveHeadersConfig {
  Quantity: number | undefined;
  Items?: ResponseHeadersPolicyRemoveHeader[] | undefined;
}
export interface ResponseHeadersPolicyContentSecurityPolicy {
  Override: boolean | undefined;
  ContentSecurityPolicy: string | undefined;
}
export interface ResponseHeadersPolicyContentTypeOptions {
  Override: boolean | undefined;
}
export declare const FrameOptionsList: {
  readonly DENY: "DENY";
  readonly SAMEORIGIN: "SAMEORIGIN";
};
export type FrameOptionsList =
  (typeof FrameOptionsList)[keyof typeof FrameOptionsList];
export interface ResponseHeadersPolicyFrameOptions {
  Override: boolean | undefined;
  FrameOption: FrameOptionsList | undefined;
}
export declare const ReferrerPolicyList: {
  readonly no_referrer: "no-referrer";
  readonly no_referrer_when_downgrade: "no-referrer-when-downgrade";
  readonly origin: "origin";
  readonly origin_when_cross_origin: "origin-when-cross-origin";
  readonly same_origin: "same-origin";
  readonly strict_origin: "strict-origin";
  readonly strict_origin_when_cross_origin: "strict-origin-when-cross-origin";
  readonly unsafe_url: "unsafe-url";
};
export type ReferrerPolicyList =
  (typeof ReferrerPolicyList)[keyof typeof ReferrerPolicyList];
export interface ResponseHeadersPolicyReferrerPolicy {
  Override: boolean | undefined;
  ReferrerPolicy: ReferrerPolicyList | undefined;
}
export interface ResponseHeadersPolicyStrictTransportSecurity {
  Override: boolean | undefined;
  IncludeSubdomains?: boolean | undefined;
  Preload?: boolean | undefined;
  AccessControlMaxAgeSec: number | undefined;
}
export interface ResponseHeadersPolicyXSSProtection {
  Override: boolean | undefined;
  Protection: boolean | undefined;
  ModeBlock?: boolean | undefined;
  ReportUri?: string | undefined;
}
export interface ResponseHeadersPolicySecurityHeadersConfig {
  XSSProtection?: ResponseHeadersPolicyXSSProtection | undefined;
  FrameOptions?: ResponseHeadersPolicyFrameOptions | undefined;
  ReferrerPolicy?: ResponseHeadersPolicyReferrerPolicy | undefined;
  ContentSecurityPolicy?:
    | ResponseHeadersPolicyContentSecurityPolicy
    | undefined;
  ContentTypeOptions?: ResponseHeadersPolicyContentTypeOptions | undefined;
  StrictTransportSecurity?:
    | ResponseHeadersPolicyStrictTransportSecurity
    | undefined;
}
export interface ResponseHeadersPolicyServerTimingHeadersConfig {
  Enabled: boolean | undefined;
  SamplingRate?: number | undefined;
}
export interface ResponseHeadersPolicyConfig {
  Comment?: string | undefined;
  Name: string | undefined;
  CorsConfig?: ResponseHeadersPolicyCorsConfig | undefined;
  SecurityHeadersConfig?:
    | ResponseHeadersPolicySecurityHeadersConfig
    | undefined;
  ServerTimingHeadersConfig?:
    | ResponseHeadersPolicyServerTimingHeadersConfig
    | undefined;
  CustomHeadersConfig?: ResponseHeadersPolicyCustomHeadersConfig | undefined;
  RemoveHeadersConfig?: ResponseHeadersPolicyRemoveHeadersConfig | undefined;
}
export interface CreateResponseHeadersPolicyRequest {
  ResponseHeadersPolicyConfig: ResponseHeadersPolicyConfig | undefined;
}
export interface ResponseHeadersPolicy {
  Id: string | undefined;
  LastModifiedTime: Date | undefined;
  ResponseHeadersPolicyConfig: ResponseHeadersPolicyConfig | undefined;
}
export interface CreateResponseHeadersPolicyResult {
  ResponseHeadersPolicy?: ResponseHeadersPolicy | undefined;
  Location?: string | undefined;
  ETag?: string | undefined;
}
export declare class ResponseHeadersPolicyAlreadyExists extends __BaseException {
  readonly name: "ResponseHeadersPolicyAlreadyExists";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      ResponseHeadersPolicyAlreadyExists,
      __BaseException
    >
  );
}
export declare class TooLongCSPInResponseHeadersPolicy extends __BaseException {
  readonly name: "TooLongCSPInResponseHeadersPolicy";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      TooLongCSPInResponseHeadersPolicy,
      __BaseException
    >
  );
}
export declare class TooManyCustomHeadersInResponseHeadersPolicy extends __BaseException {
  readonly name: "TooManyCustomHeadersInResponseHeadersPolicy";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      TooManyCustomHeadersInResponseHeadersPolicy,
      __BaseException
    >
  );
}
export declare class TooManyRemoveHeadersInResponseHeadersPolicy extends __BaseException {
  readonly name: "TooManyRemoveHeadersInResponseHeadersPolicy";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      TooManyRemoveHeadersInResponseHeadersPolicy,
      __BaseException
    >
  );
}
export declare class TooManyResponseHeadersPolicies extends __BaseException {
  readonly name: "TooManyResponseHeadersPolicies";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<TooManyResponseHeadersPolicies, __BaseException>
  );
}
export interface StreamingLoggingConfig {
  Enabled: boolean | undefined;
  Bucket: string | undefined;
  Prefix: string | undefined;
}
export interface S3Origin {
  DomainName: string | undefined;
  OriginAccessIdentity: string | undefined;
}
export interface StreamingDistributionConfig {
  CallerReference: string | undefined;
  S3Origin: S3Origin | undefined;
  Aliases?: Aliases | undefined;
  Comment: string | undefined;
  Logging?: StreamingLoggingConfig | undefined;
  TrustedSigners: TrustedSigners | undefined;
  PriceClass?: PriceClass | undefined;
  Enabled: boolean | undefined;
}
export interface CreateStreamingDistributionRequest {
  StreamingDistributionConfig: StreamingDistributionConfig | undefined;
}
export interface StreamingDistribution {
  Id: string | undefined;
  ARN: string | undefined;
  Status: string | undefined;
  LastModifiedTime?: Date | undefined;
  DomainName: string | undefined;
  ActiveTrustedSigners: ActiveTrustedSigners | undefined;
  StreamingDistributionConfig: StreamingDistributionConfig | undefined;
}
export interface CreateStreamingDistributionResult {
  StreamingDistribution?: StreamingDistribution | undefined;
  Location?: string | undefined;
  ETag?: string | undefined;
}
export declare class StreamingDistributionAlreadyExists extends __BaseException {
  readonly name: "StreamingDistributionAlreadyExists";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      StreamingDistributionAlreadyExists,
      __BaseException
    >
  );
}
export declare class TooManyStreamingDistributionCNAMEs extends __BaseException {
  readonly name: "TooManyStreamingDistributionCNAMEs";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      TooManyStreamingDistributionCNAMEs,
      __BaseException
    >
  );
}
export declare class TooManyStreamingDistributions extends __BaseException {
  readonly name: "TooManyStreamingDistributions";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<TooManyStreamingDistributions, __BaseException>
  );
}
export interface StreamingDistributionConfigWithTags {
  StreamingDistributionConfig: StreamingDistributionConfig | undefined;
  Tags: Tags | undefined;
}
export interface CreateStreamingDistributionWithTagsRequest {
  StreamingDistributionConfigWithTags:
    | StreamingDistributionConfigWithTags
    | undefined;
}
export interface CreateStreamingDistributionWithTagsResult {
  StreamingDistribution?: StreamingDistribution | undefined;
  Location?: string | undefined;
  ETag?: string | undefined;
}
export interface VpcOriginEndpointConfig {
  Name: string | undefined;
  Arn: string | undefined;
  HTTPPort: number | undefined;
  HTTPSPort: number | undefined;
  OriginProtocolPolicy: OriginProtocolPolicy | undefined;
  OriginSslProtocols?: OriginSslProtocols | undefined;
}
export interface CreateVpcOriginRequest {
  VpcOriginEndpointConfig: VpcOriginEndpointConfig | undefined;
  Tags?: Tags | undefined;
}
export interface VpcOrigin {
  Id: string | undefined;
  Arn: string | undefined;
  Status: string | undefined;
  CreatedTime: Date | undefined;
  LastModifiedTime: Date | undefined;
  VpcOriginEndpointConfig: VpcOriginEndpointConfig | undefined;
}
export interface CreateVpcOriginResult {
  VpcOrigin?: VpcOrigin | undefined;
  Location?: string | undefined;
  ETag?: string | undefined;
}
export interface DeleteAnycastIpListRequest {
  Id: string | undefined;
  IfMatch: string | undefined;
}
export declare class IllegalDelete extends __BaseException {
  readonly name: "IllegalDelete";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(opts: __ExceptionOptionType<IllegalDelete, __BaseException>);
}
export interface DeleteCachePolicyRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class CloudFrontOriginAccessIdentityInUse extends __BaseException {
  readonly name: "CloudFrontOriginAccessIdentityInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      CloudFrontOriginAccessIdentityInUse,
      __BaseException
    >
  );
}
export interface DeleteCloudFrontOriginAccessIdentityRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class NoSuchCloudFrontOriginAccessIdentity extends __BaseException {
  readonly name: "NoSuchCloudFrontOriginAccessIdentity";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      NoSuchCloudFrontOriginAccessIdentity,
      __BaseException
    >
  );
}
export interface DeleteContinuousDeploymentPolicyRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface DeleteDistributionRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class DistributionNotDisabled extends __BaseException {
  readonly name: "DistributionNotDisabled";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<DistributionNotDisabled, __BaseException>
  );
}
export interface DeleteFieldLevelEncryptionConfigRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class FieldLevelEncryptionConfigInUse extends __BaseException {
  readonly name: "FieldLevelEncryptionConfigInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      FieldLevelEncryptionConfigInUse,
      __BaseException
    >
  );
}
export interface DeleteFieldLevelEncryptionProfileRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class FieldLevelEncryptionProfileInUse extends __BaseException {
  readonly name: "FieldLevelEncryptionProfileInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      FieldLevelEncryptionProfileInUse,
      __BaseException
    >
  );
}
export interface DeleteFunctionRequest {
  Name: string | undefined;
  IfMatch: string | undefined;
}
export declare class FunctionInUse extends __BaseException {
  readonly name: "FunctionInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(opts: __ExceptionOptionType<FunctionInUse, __BaseException>);
}
export declare class NoSuchFunctionExists extends __BaseException {
  readonly name: "NoSuchFunctionExists";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<NoSuchFunctionExists, __BaseException>
  );
}
export interface DeleteKeyGroupRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class NoSuchResource extends __BaseException {
  readonly name: "NoSuchResource";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(opts: __ExceptionOptionType<NoSuchResource, __BaseException>);
}
export declare class ResourceInUse extends __BaseException {
  readonly name: "ResourceInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(opts: __ExceptionOptionType<ResourceInUse, __BaseException>);
}
export interface DeleteKeyValueStoreRequest {
  Name: string | undefined;
  IfMatch: string | undefined;
}
export interface DeleteMonitoringSubscriptionRequest {
  DistributionId: string | undefined;
}
export interface DeleteMonitoringSubscriptionResult {}
export declare class NoSuchMonitoringSubscription extends __BaseException {
  readonly name: "NoSuchMonitoringSubscription";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<NoSuchMonitoringSubscription, __BaseException>
  );
}
export interface DeleteOriginAccessControlRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class NoSuchOriginAccessControl extends __BaseException {
  readonly name: "NoSuchOriginAccessControl";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<NoSuchOriginAccessControl, __BaseException>
  );
}
export declare class OriginAccessControlInUse extends __BaseException {
  readonly name: "OriginAccessControlInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<OriginAccessControlInUse, __BaseException>
  );
}
export interface DeleteOriginRequestPolicyRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class OriginRequestPolicyInUse extends __BaseException {
  readonly name: "OriginRequestPolicyInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<OriginRequestPolicyInUse, __BaseException>
  );
}
export interface DeletePublicKeyRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class PublicKeyInUse extends __BaseException {
  readonly name: "PublicKeyInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(opts: __ExceptionOptionType<PublicKeyInUse, __BaseException>);
}
export interface DeleteRealtimeLogConfigRequest {
  Name?: string | undefined;
  ARN?: string | undefined;
}
export declare class RealtimeLogConfigInUse extends __BaseException {
  readonly name: "RealtimeLogConfigInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<RealtimeLogConfigInUse, __BaseException>
  );
}
export interface DeleteResponseHeadersPolicyRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class ResponseHeadersPolicyInUse extends __BaseException {
  readonly name: "ResponseHeadersPolicyInUse";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<ResponseHeadersPolicyInUse, __BaseException>
  );
}
export interface DeleteStreamingDistributionRequest {
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export declare class NoSuchStreamingDistribution extends __BaseException {
  readonly name: "NoSuchStreamingDistribution";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<NoSuchStreamingDistribution, __BaseException>
  );
}
export declare class StreamingDistributionNotDisabled extends __BaseException {
  readonly name: "StreamingDistributionNotDisabled";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(
    opts: __ExceptionOptionType<
      StreamingDistributionNotDisabled,
      __BaseException
    >
  );
}
export interface DeleteVpcOriginRequest {
  Id: string | undefined;
  IfMatch: string | undefined;
}
export interface DeleteVpcOriginResult {
  VpcOrigin?: VpcOrigin | undefined;
  ETag?: string | undefined;
}
export interface DescribeFunctionRequest {
  Name: string | undefined;
  Stage?: FunctionStage | undefined;
}
export interface DescribeFunctionResult {
  FunctionSummary?: FunctionSummary | undefined;
  ETag?: string | undefined;
}
export interface DescribeKeyValueStoreRequest {
  Name: string | undefined;
}
export interface DescribeKeyValueStoreResult {
  KeyValueStore?: KeyValueStore | undefined;
  ETag?: string | undefined;
}
export interface GetAnycastIpListRequest {
  Id: string | undefined;
}
export interface GetAnycastIpListResult {
  AnycastIpList?: AnycastIpList | undefined;
  ETag?: string | undefined;
}
export interface GetCachePolicyRequest {
  Id: string | undefined;
}
export interface GetCachePolicyResult {
  CachePolicy?: CachePolicy | undefined;
  ETag?: string | undefined;
}
export interface GetCachePolicyConfigRequest {
  Id: string | undefined;
}
export interface GetCachePolicyConfigResult {
  CachePolicyConfig?: CachePolicyConfig | undefined;
  ETag?: string | undefined;
}
export interface GetCloudFrontOriginAccessIdentityRequest {
  Id: string | undefined;
}
export interface GetCloudFrontOriginAccessIdentityResult {
  CloudFrontOriginAccessIdentity?: CloudFrontOriginAccessIdentity | undefined;
  ETag?: string | undefined;
}
export interface GetCloudFrontOriginAccessIdentityConfigRequest {
  Id: string | undefined;
}
export interface GetCloudFrontOriginAccessIdentityConfigResult {
  CloudFrontOriginAccessIdentityConfig?:
    | CloudFrontOriginAccessIdentityConfig
    | undefined;
  ETag?: string | undefined;
}
export interface GetContinuousDeploymentPolicyRequest {
  Id: string | undefined;
}
export interface GetContinuousDeploymentPolicyResult {
  ContinuousDeploymentPolicy?: ContinuousDeploymentPolicy | undefined;
  ETag?: string | undefined;
}
export interface GetContinuousDeploymentPolicyConfigRequest {
  Id: string | undefined;
}
export interface GetContinuousDeploymentPolicyConfigResult {
  ContinuousDeploymentPolicyConfig?:
    | ContinuousDeploymentPolicyConfig
    | undefined;
  ETag?: string | undefined;
}
export interface GetDistributionRequest {
  Id: string | undefined;
}
export interface GetDistributionResult {
  Distribution?: Distribution | undefined;
  ETag?: string | undefined;
}
export interface GetDistributionConfigRequest {
  Id: string | undefined;
}
export interface GetDistributionConfigResult {
  DistributionConfig?: DistributionConfig | undefined;
  ETag?: string | undefined;
}
export interface GetFieldLevelEncryptionRequest {
  Id: string | undefined;
}
export interface GetFieldLevelEncryptionResult {
  FieldLevelEncryption?: FieldLevelEncryption | undefined;
  ETag?: string | undefined;
}
export interface GetFieldLevelEncryptionConfigRequest {
  Id: string | undefined;
}
export interface GetFieldLevelEncryptionConfigResult {
  FieldLevelEncryptionConfig?: FieldLevelEncryptionConfig | undefined;
  ETag?: string | undefined;
}
export interface GetFieldLevelEncryptionProfileRequest {
  Id: string | undefined;
}
export interface GetFieldLevelEncryptionProfileResult {
  FieldLevelEncryptionProfile?: FieldLevelEncryptionProfile | undefined;
  ETag?: string | undefined;
}
export interface GetFieldLevelEncryptionProfileConfigRequest {
  Id: string | undefined;
}
export interface GetFieldLevelEncryptionProfileConfigResult {
  FieldLevelEncryptionProfileConfig?:
    | FieldLevelEncryptionProfileConfig
    | undefined;
  ETag?: string | undefined;
}
export interface GetFunctionRequest {
  Name: string | undefined;
  Stage?: FunctionStage | undefined;
}
export interface GetFunctionResult {
  FunctionCode?: Uint8Array | undefined;
  ETag?: string | undefined;
  ContentType?: string | undefined;
}
export interface GetInvalidationRequest {
  DistributionId: string | undefined;
  Id: string | undefined;
}
export interface GetInvalidationResult {
  Invalidation?: Invalidation | undefined;
}
export declare class NoSuchInvalidation extends __BaseException {
  readonly name: "NoSuchInvalidation";
  readonly $fault: "client";
  Message?: string | undefined;
  constructor(opts: __ExceptionOptionType<NoSuchInvalidation, __BaseException>);
}
export interface GetKeyGroupRequest {
  Id: string | undefined;
}
export interface GetKeyGroupResult {
  KeyGroup?: KeyGroup | undefined;
  ETag?: string | undefined;
}
export interface GetKeyGroupConfigRequest {
  Id: string | undefined;
}
export interface GetKeyGroupConfigResult {
  KeyGroupConfig?: KeyGroupConfig | undefined;
  ETag?: string | undefined;
}
export interface GetMonitoringSubscriptionRequest {
  DistributionId: string | undefined;
}
export interface GetMonitoringSubscriptionResult {
  MonitoringSubscription?: MonitoringSubscription | undefined;
}
export interface GetOriginAccessControlRequest {
  Id: string | undefined;
}
export interface GetOriginAccessControlResult {
  OriginAccessControl?: OriginAccessControl | undefined;
  ETag?: string | undefined;
}
export interface GetOriginAccessControlConfigRequest {
  Id: string | undefined;
}
export interface GetOriginAccessControlConfigResult {
  OriginAccessControlConfig?: OriginAccessControlConfig | undefined;
  ETag?: string | undefined;
}
export interface GetOriginRequestPolicyRequest {
  Id: string | undefined;
}
export interface GetOriginRequestPolicyResult {
  OriginRequestPolicy?: OriginRequestPolicy | undefined;
  ETag?: string | undefined;
}
export interface GetOriginRequestPolicyConfigRequest {
  Id: string | undefined;
}
export interface GetOriginRequestPolicyConfigResult {
  OriginRequestPolicyConfig?: OriginRequestPolicyConfig | undefined;
  ETag?: string | undefined;
}
export interface GetPublicKeyRequest {
  Id: string | undefined;
}
export interface GetPublicKeyResult {
  PublicKey?: PublicKey | undefined;
  ETag?: string | undefined;
}
export interface GetPublicKeyConfigRequest {
  Id: string | undefined;
}
export interface GetPublicKeyConfigResult {
  PublicKeyConfig?: PublicKeyConfig | undefined;
  ETag?: string | undefined;
}
export interface GetRealtimeLogConfigRequest {
  Name?: string | undefined;
  ARN?: string | undefined;
}
export interface GetRealtimeLogConfigResult {
  RealtimeLogConfig?: RealtimeLogConfig | undefined;
}
export interface GetResponseHeadersPolicyRequest {
  Id: string | undefined;
}
export interface GetResponseHeadersPolicyResult {
  ResponseHeadersPolicy?: ResponseHeadersPolicy | undefined;
  ETag?: string | undefined;
}
export interface GetResponseHeadersPolicyConfigRequest {
  Id: string | undefined;
}
export interface GetResponseHeadersPolicyConfigResult {
  ResponseHeadersPolicyConfig?: ResponseHeadersPolicyConfig | undefined;
  ETag?: string | undefined;
}
export interface GetStreamingDistributionRequest {
  Id: string | undefined;
}
export interface GetStreamingDistributionResult {
  StreamingDistribution?: StreamingDistribution | undefined;
  ETag?: string | undefined;
}
export interface GetStreamingDistributionConfigRequest {
  Id: string | undefined;
}
export interface GetStreamingDistributionConfigResult {
  StreamingDistributionConfig?: StreamingDistributionConfig | undefined;
  ETag?: string | undefined;
}
export interface GetVpcOriginRequest {
  Id: string | undefined;
}
export interface GetVpcOriginResult {
  VpcOrigin?: VpcOrigin | undefined;
  ETag?: string | undefined;
}
export interface ListAnycastIpListsRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface ListAnycastIpListsResult {
  AnycastIpLists?: AnycastIpListCollection | undefined;
}
export interface ListCachePoliciesRequest {
  Type?: CachePolicyType | undefined;
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface ListCachePoliciesResult {
  CachePolicyList?: CachePolicyList | undefined;
}
export interface ListCloudFrontOriginAccessIdentitiesRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface CloudFrontOriginAccessIdentitySummary {
  Id: string | undefined;
  S3CanonicalUserId: string | undefined;
  Comment: string | undefined;
}
export interface CloudFrontOriginAccessIdentityList {
  Marker: string | undefined;
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  IsTruncated: boolean | undefined;
  Quantity: number | undefined;
  Items?: CloudFrontOriginAccessIdentitySummary[] | undefined;
}
export interface ListCloudFrontOriginAccessIdentitiesResult {
  CloudFrontOriginAccessIdentityList?:
    | CloudFrontOriginAccessIdentityList
    | undefined;
}
export interface ListConflictingAliasesRequest {
  DistributionId: string | undefined;
  Alias: string | undefined;
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface ConflictingAlias {
  Alias?: string | undefined;
  DistributionId?: string | undefined;
  AccountId?: string | undefined;
}
export interface ConflictingAliasesList {
  NextMarker?: string | undefined;
  MaxItems?: number | undefined;
  Quantity?: number | undefined;
  Items?: ConflictingAlias[] | undefined;
}
export interface ListConflictingAliasesResult {
  ConflictingAliasesList?: ConflictingAliasesList | undefined;
}
export interface ListContinuousDeploymentPoliciesRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface ContinuousDeploymentPolicySummary {
  ContinuousDeploymentPolicy: ContinuousDeploymentPolicy | undefined;
}
export interface ContinuousDeploymentPolicyList {
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  Quantity: number | undefined;
  Items?: ContinuousDeploymentPolicySummary[] | undefined;
}
export interface ListContinuousDeploymentPoliciesResult {
  ContinuousDeploymentPolicyList?: ContinuousDeploymentPolicyList | undefined;
}
export interface ListDistributionsRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface DistributionSummary {
  Id: string | undefined;
  ARN: string | undefined;
  Status: string | undefined;
  LastModifiedTime: Date | undefined;
  DomainName: string | undefined;
  Aliases: Aliases | undefined;
  Origins: Origins | undefined;
  OriginGroups?: OriginGroups | undefined;
  DefaultCacheBehavior: DefaultCacheBehavior | undefined;
  CacheBehaviors: CacheBehaviors | undefined;
  CustomErrorResponses: CustomErrorResponses | undefined;
  Comment: string | undefined;
  PriceClass: PriceClass | undefined;
  Enabled: boolean | undefined;
  ViewerCertificate: ViewerCertificate | undefined;
  Restrictions: Restrictions | undefined;
  WebACLId: string | undefined;
  HttpVersion: HttpVersion | undefined;
  IsIPV6Enabled: boolean | undefined;
  AliasICPRecordals?: AliasICPRecordal[] | undefined;
  Staging: boolean | undefined;
  AnycastIpListId?: string | undefined;
}
export interface DistributionList {
  Marker: string | undefined;
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  IsTruncated: boolean | undefined;
  Quantity: number | undefined;
  Items?: DistributionSummary[] | undefined;
}
export interface ListDistributionsResult {
  DistributionList?: DistributionList | undefined;
}
export interface ListDistributionsByAnycastIpListIdRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  AnycastIpListId: string | undefined;
}
export interface ListDistributionsByAnycastIpListIdResult {
  DistributionList?: DistributionList | undefined;
}
export interface ListDistributionsByCachePolicyIdRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  CachePolicyId: string | undefined;
}
export interface DistributionIdList {
  Marker: string | undefined;
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  IsTruncated: boolean | undefined;
  Quantity: number | undefined;
  Items?: string[] | undefined;
}
export interface ListDistributionsByCachePolicyIdResult {
  DistributionIdList?: DistributionIdList | undefined;
}
export interface ListDistributionsByKeyGroupRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  KeyGroupId: string | undefined;
}
export interface ListDistributionsByKeyGroupResult {
  DistributionIdList?: DistributionIdList | undefined;
}
export interface ListDistributionsByOriginRequestPolicyIdRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  OriginRequestPolicyId: string | undefined;
}
export interface ListDistributionsByOriginRequestPolicyIdResult {
  DistributionIdList?: DistributionIdList | undefined;
}
export interface ListDistributionsByRealtimeLogConfigRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  RealtimeLogConfigName?: string | undefined;
  RealtimeLogConfigArn?: string | undefined;
}
export interface ListDistributionsByRealtimeLogConfigResult {
  DistributionList?: DistributionList | undefined;
}
export interface ListDistributionsByResponseHeadersPolicyIdRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  ResponseHeadersPolicyId: string | undefined;
}
export interface ListDistributionsByResponseHeadersPolicyIdResult {
  DistributionIdList?: DistributionIdList | undefined;
}
export interface ListDistributionsByVpcOriginIdRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  VpcOriginId: string | undefined;
}
export interface ListDistributionsByVpcOriginIdResult {
  DistributionIdList?: DistributionIdList | undefined;
}
export interface ListDistributionsByWebACLIdRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  WebACLId: string | undefined;
}
export interface ListDistributionsByWebACLIdResult {
  DistributionList?: DistributionList | undefined;
}
export interface ListFieldLevelEncryptionConfigsRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface FieldLevelEncryptionSummary {
  Id: string | undefined;
  LastModifiedTime: Date | undefined;
  Comment?: string | undefined;
  QueryArgProfileConfig?: QueryArgProfileConfig | undefined;
  ContentTypeProfileConfig?: ContentTypeProfileConfig | undefined;
}
export interface FieldLevelEncryptionList {
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  Quantity: number | undefined;
  Items?: FieldLevelEncryptionSummary[] | undefined;
}
export interface ListFieldLevelEncryptionConfigsResult {
  FieldLevelEncryptionList?: FieldLevelEncryptionList | undefined;
}
export interface ListFieldLevelEncryptionProfilesRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface FieldLevelEncryptionProfileSummary {
  Id: string | undefined;
  LastModifiedTime: Date | undefined;
  Name: string | undefined;
  EncryptionEntities: EncryptionEntities | undefined;
  Comment?: string | undefined;
}
export interface FieldLevelEncryptionProfileList {
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  Quantity: number | undefined;
  Items?: FieldLevelEncryptionProfileSummary[] | undefined;
}
export interface ListFieldLevelEncryptionProfilesResult {
  FieldLevelEncryptionProfileList?: FieldLevelEncryptionProfileList | undefined;
}
export interface ListFunctionsRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  Stage?: FunctionStage | undefined;
}
export interface FunctionList {
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  Quantity: number | undefined;
  Items?: FunctionSummary[] | undefined;
}
export interface ListFunctionsResult {
  FunctionList?: FunctionList | undefined;
}
export interface ListInvalidationsRequest {
  DistributionId: string | undefined;
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface InvalidationSummary {
  Id: string | undefined;
  CreateTime: Date | undefined;
  Status: string | undefined;
}
export interface InvalidationList {
  Marker: string | undefined;
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  IsTruncated: boolean | undefined;
  Quantity: number | undefined;
  Items?: InvalidationSummary[] | undefined;
}
export interface ListInvalidationsResult {
  InvalidationList?: InvalidationList | undefined;
}
export interface ListKeyGroupsRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface KeyGroupSummary {
  KeyGroup: KeyGroup | undefined;
}
export interface KeyGroupList {
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  Quantity: number | undefined;
  Items?: KeyGroupSummary[] | undefined;
}
export interface ListKeyGroupsResult {
  KeyGroupList?: KeyGroupList | undefined;
}
export interface ListKeyValueStoresRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
  Status?: string | undefined;
}
export interface KeyValueStoreList {
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  Quantity: number | undefined;
  Items?: KeyValueStore[] | undefined;
}
export interface ListKeyValueStoresResult {
  KeyValueStoreList?: KeyValueStoreList | undefined;
}
export interface ListOriginAccessControlsRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface OriginAccessControlSummary {
  Id: string | undefined;
  Description: string | undefined;
  Name: string | undefined;
  SigningProtocol: OriginAccessControlSigningProtocols | undefined;
  SigningBehavior: OriginAccessControlSigningBehaviors | undefined;
  OriginAccessControlOriginType: OriginAccessControlOriginTypes | undefined;
}
export interface OriginAccessControlList {
  Marker: string | undefined;
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  IsTruncated: boolean | undefined;
  Quantity: number | undefined;
  Items?: OriginAccessControlSummary[] | undefined;
}
export interface ListOriginAccessControlsResult {
  OriginAccessControlList?: OriginAccessControlList | undefined;
}
export declare const OriginRequestPolicyType: {
  readonly custom: "custom";
  readonly managed: "managed";
};
export type OriginRequestPolicyType =
  (typeof OriginRequestPolicyType)[keyof typeof OriginRequestPolicyType];
export interface ListOriginRequestPoliciesRequest {
  Type?: OriginRequestPolicyType | undefined;
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface OriginRequestPolicySummary {
  Type: OriginRequestPolicyType | undefined;
  OriginRequestPolicy: OriginRequestPolicy | undefined;
}
export interface OriginRequestPolicyList {
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  Quantity: number | undefined;
  Items?: OriginRequestPolicySummary[] | undefined;
}
export interface ListOriginRequestPoliciesResult {
  OriginRequestPolicyList?: OriginRequestPolicyList | undefined;
}
export interface ListPublicKeysRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface PublicKeySummary {
  Id: string | undefined;
  Name: string | undefined;
  CreatedTime: Date | undefined;
  EncodedKey: string | undefined;
  Comment?: string | undefined;
}
export interface PublicKeyList {
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  Quantity: number | undefined;
  Items?: PublicKeySummary[] | undefined;
}
export interface ListPublicKeysResult {
  PublicKeyList?: PublicKeyList | undefined;
}
export interface ListRealtimeLogConfigsRequest {
  MaxItems?: number | undefined;
  Marker?: string | undefined;
}
export interface RealtimeLogConfigs {
  MaxItems: number | undefined;
  Items?: RealtimeLogConfig[] | undefined;
  IsTruncated: boolean | undefined;
  Marker: string | undefined;
  NextMarker?: string | undefined;
}
export interface ListRealtimeLogConfigsResult {
  RealtimeLogConfigs?: RealtimeLogConfigs | undefined;
}
export declare const ResponseHeadersPolicyType: {
  readonly custom: "custom";
  readonly managed: "managed";
};
export type ResponseHeadersPolicyType =
  (typeof ResponseHeadersPolicyType)[keyof typeof ResponseHeadersPolicyType];
export interface ListResponseHeadersPoliciesRequest {
  Type?: ResponseHeadersPolicyType | undefined;
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface ResponseHeadersPolicySummary {
  Type: ResponseHeadersPolicyType | undefined;
  ResponseHeadersPolicy: ResponseHeadersPolicy | undefined;
}
export interface ResponseHeadersPolicyList {
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  Quantity: number | undefined;
  Items?: ResponseHeadersPolicySummary[] | undefined;
}
export interface ListResponseHeadersPoliciesResult {
  ResponseHeadersPolicyList?: ResponseHeadersPolicyList | undefined;
}
export interface ListStreamingDistributionsRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface StreamingDistributionSummary {
  Id: string | undefined;
  ARN: string | undefined;
  Status: string | undefined;
  LastModifiedTime: Date | undefined;
  DomainName: string | undefined;
  S3Origin: S3Origin | undefined;
  Aliases: Aliases | undefined;
  TrustedSigners: TrustedSigners | undefined;
  Comment: string | undefined;
  PriceClass: PriceClass | undefined;
  Enabled: boolean | undefined;
}
export interface StreamingDistributionList {
  Marker: string | undefined;
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  IsTruncated: boolean | undefined;
  Quantity: number | undefined;
  Items?: StreamingDistributionSummary[] | undefined;
}
export interface ListStreamingDistributionsResult {
  StreamingDistributionList?: StreamingDistributionList | undefined;
}
export interface ListTagsForResourceRequest {
  Resource: string | undefined;
}
export interface ListTagsForResourceResult {
  Tags: Tags | undefined;
}
export interface ListVpcOriginsRequest {
  Marker?: string | undefined;
  MaxItems?: number | undefined;
}
export interface VpcOriginSummary {
  Id: string | undefined;
  Name: string | undefined;
  Status: string | undefined;
  CreatedTime: Date | undefined;
  LastModifiedTime: Date | undefined;
  Arn: string | undefined;
  OriginEndpointArn: string | undefined;
}
export interface VpcOriginList {
  Marker: string | undefined;
  NextMarker?: string | undefined;
  MaxItems: number | undefined;
  IsTruncated: boolean | undefined;
  Quantity: number | undefined;
  Items?: VpcOriginSummary[] | undefined;
}
export interface ListVpcOriginsResult {
  VpcOriginList?: VpcOriginList | undefined;
}
export interface PublishFunctionRequest {
  Name: string | undefined;
  IfMatch: string | undefined;
}
export interface PublishFunctionResult {
  FunctionSummary?: FunctionSummary | undefined;
}
export interface TagResourceRequest {
  Resource: string | undefined;
  Tags: Tags | undefined;
}
export declare class TestFunctionFailed extends __BaseException {
  readonly name: "TestFunctionFailed";
  readonly $fault: "server";
  Message?: string | undefined;
  constructor(opts: __ExceptionOptionType<TestFunctionFailed, __BaseException>);
}
export interface TestFunctionRequest {
  Name: string | undefined;
  IfMatch: string | undefined;
  Stage?: FunctionStage | undefined;
  EventObject: Uint8Array | undefined;
}
export interface TestResult {
  FunctionSummary?: FunctionSummary | undefined;
  ComputeUtilization?: string | undefined;
  FunctionExecutionLogs?: string[] | undefined;
  FunctionErrorMessage?: string | undefined;
  FunctionOutput?: string | undefined;
}
export interface TestFunctionResult {
  TestResult?: TestResult | undefined;
}
export interface TagKeys {
  Items?: string[] | undefined;
}
export interface UntagResourceRequest {
  Resource: string | undefined;
  TagKeys: TagKeys | undefined;
}
export interface UpdateCachePolicyRequest {
  CachePolicyConfig: CachePolicyConfig | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateCachePolicyResult {
  CachePolicy?: CachePolicy | undefined;
  ETag?: string | undefined;
}
export interface UpdateCloudFrontOriginAccessIdentityRequest {
  CloudFrontOriginAccessIdentityConfig:
    | CloudFrontOriginAccessIdentityConfig
    | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateCloudFrontOriginAccessIdentityResult {
  CloudFrontOriginAccessIdentity?: CloudFrontOriginAccessIdentity | undefined;
  ETag?: string | undefined;
}
export interface UpdateContinuousDeploymentPolicyRequest {
  ContinuousDeploymentPolicyConfig:
    | ContinuousDeploymentPolicyConfig
    | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateContinuousDeploymentPolicyResult {
  ContinuousDeploymentPolicy?: ContinuousDeploymentPolicy | undefined;
  ETag?: string | undefined;
}
export interface UpdateDistributionRequest {
  DistributionConfig: DistributionConfig | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateDistributionResult {
  Distribution?: Distribution | undefined;
  ETag?: string | undefined;
}
export interface UpdateDistributionWithStagingConfigRequest {
  Id: string | undefined;
  StagingDistributionId?: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateDistributionWithStagingConfigResult {
  Distribution?: Distribution | undefined;
  ETag?: string | undefined;
}
export interface UpdateFieldLevelEncryptionConfigRequest {
  FieldLevelEncryptionConfig: FieldLevelEncryptionConfig | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateFieldLevelEncryptionConfigResult {
  FieldLevelEncryption?: FieldLevelEncryption | undefined;
  ETag?: string | undefined;
}
export interface UpdateFieldLevelEncryptionProfileRequest {
  FieldLevelEncryptionProfileConfig:
    | FieldLevelEncryptionProfileConfig
    | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateFieldLevelEncryptionProfileResult {
  FieldLevelEncryptionProfile?: FieldLevelEncryptionProfile | undefined;
  ETag?: string | undefined;
}
export interface UpdateFunctionRequest {
  Name: string | undefined;
  IfMatch: string | undefined;
  FunctionConfig: FunctionConfig | undefined;
  FunctionCode: Uint8Array | undefined;
}
export interface UpdateFunctionResult {
  FunctionSummary?: FunctionSummary | undefined;
  ETag?: string | undefined;
}
export interface UpdateKeyGroupRequest {
  KeyGroupConfig: KeyGroupConfig | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateKeyGroupResult {
  KeyGroup?: KeyGroup | undefined;
  ETag?: string | undefined;
}
export interface UpdateKeyValueStoreRequest {
  Name: string | undefined;
  Comment: string | undefined;
  IfMatch: string | undefined;
}
export interface UpdateKeyValueStoreResult {
  KeyValueStore?: KeyValueStore | undefined;
  ETag?: string | undefined;
}
export interface UpdateOriginAccessControlRequest {
  OriginAccessControlConfig: OriginAccessControlConfig | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateOriginAccessControlResult {
  OriginAccessControl?: OriginAccessControl | undefined;
  ETag?: string | undefined;
}
export interface UpdateOriginRequestPolicyRequest {
  OriginRequestPolicyConfig: OriginRequestPolicyConfig | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateOriginRequestPolicyResult {
  OriginRequestPolicy?: OriginRequestPolicy | undefined;
  ETag?: string | undefined;
}
export interface UpdatePublicKeyRequest {
  PublicKeyConfig: PublicKeyConfig | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdatePublicKeyResult {
  PublicKey?: PublicKey | undefined;
  ETag?: string | undefined;
}
export interface UpdateRealtimeLogConfigRequest {
  EndPoints?: EndPoint[] | undefined;
  Fields?: string[] | undefined;
  Name?: string | undefined;
  ARN?: string | undefined;
  SamplingRate?: number | undefined;
}
export interface UpdateRealtimeLogConfigResult {
  RealtimeLogConfig?: RealtimeLogConfig | undefined;
}
export interface UpdateResponseHeadersPolicyRequest {
  ResponseHeadersPolicyConfig: ResponseHeadersPolicyConfig | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateResponseHeadersPolicyResult {
  ResponseHeadersPolicy?: ResponseHeadersPolicy | undefined;
  ETag?: string | undefined;
}
export interface UpdateStreamingDistributionRequest {
  StreamingDistributionConfig: StreamingDistributionConfig | undefined;
  Id: string | undefined;
  IfMatch?: string | undefined;
}
export interface UpdateStreamingDistributionResult {
  StreamingDistribution?: StreamingDistribution | undefined;
  ETag?: string | undefined;
}
export interface UpdateVpcOriginRequest {
  VpcOriginEndpointConfig: VpcOriginEndpointConfig | undefined;
  Id: string | undefined;
  IfMatch: string | undefined;
}
export interface UpdateVpcOriginResult {
  VpcOrigin?: VpcOrigin | undefined;
  ETag?: string | undefined;
}
export declare const GetDistributionResultFilterSensitiveLog: (
  obj: GetDistributionResult
) => any;
export declare const GetDistributionConfigResultFilterSensitiveLog: (
  obj: GetDistributionConfigResult
) => any;
export declare const GetFunctionResultFilterSensitiveLog: (
  obj: GetFunctionResult
) => any;
export declare const DistributionSummaryFilterSensitiveLog: (
  obj: DistributionSummary
) => any;
export declare const DistributionListFilterSensitiveLog: (
  obj: DistributionList
) => any;
export declare const ListDistributionsResultFilterSensitiveLog: (
  obj: ListDistributionsResult
) => any;
export declare const ListDistributionsByAnycastIpListIdResultFilterSensitiveLog: (
  obj: ListDistributionsByAnycastIpListIdResult
) => any;
export declare const ListDistributionsByRealtimeLogConfigResultFilterSensitiveLog: (
  obj: ListDistributionsByRealtimeLogConfigResult
) => any;
export declare const ListDistributionsByWebACLIdResultFilterSensitiveLog: (
  obj: ListDistributionsByWebACLIdResult
) => any;
export declare const TestFunctionRequestFilterSensitiveLog: (
  obj: TestFunctionRequest
) => any;
export declare const TestResultFilterSensitiveLog: (obj: TestResult) => any;
export declare const TestFunctionResultFilterSensitiveLog: (
  obj: TestFunctionResult
) => any;
export declare const UpdateDistributionRequestFilterSensitiveLog: (
  obj: UpdateDistributionRequest
) => any;
export declare const UpdateDistributionResultFilterSensitiveLog: (
  obj: UpdateDistributionResult
) => any;
export declare const UpdateDistributionWithStagingConfigResultFilterSensitiveLog: (
  obj: UpdateDistributionWithStagingConfigResult
) => any;
export declare const UpdateFunctionRequestFilterSensitiveLog: (
  obj: UpdateFunctionRequest
) => any;
