import { type EdgeRule } from './edgeRule/index.js'; import { type OptimizerClass } from './optimizer/index.js'; import { type AdditionalDataHolder, type Parsable, type ParseNode, type SerializationWriter, type UntypedNode } from '@microsoft/kiota-abstractions'; export interface BunnyAiImageBlueprint extends AdditionalDataHolder, Parsable { /** * Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. */ additionalData?: Record; /** * The Name property */ name?: string | null; /** * The Properties property */ properties?: BunnyAiImageBlueprint_Properties | null; } export interface BunnyAiImageBlueprint_Properties extends AdditionalDataHolder, Parsable { /** * Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. */ additionalData?: Record; /** * The Cfg property */ cfg?: string | null; /** * The NegativePrompt property */ negativePrompt?: string | null; /** * The PostPrompt property */ postPrompt?: string | null; /** * The PrePrompt property */ prePrompt?: string | null; /** * The Steps property */ steps?: string | null; } /** * Creates a new instance of the appropriate class based on discriminator value * @param parseNode The parse node to use to read the discriminator value and create the object * @returns {BunnyAiImageBlueprint_Properties} */ export declare function createBunnyAiImageBlueprint_PropertiesFromDiscriminatorValue(parseNode: ParseNode | undefined): ((instance?: Parsable) => Record void>); /** * Creates a new instance of the appropriate class based on discriminator value * @param parseNode The parse node to use to read the discriminator value and create the object * @returns {BunnyAiImageBlueprint} */ export declare function createBunnyAiImageBlueprintFromDiscriminatorValue(parseNode: ParseNode | undefined): ((instance?: Parsable) => Record void>); /** * Creates a new instance of the appropriate class based on discriminator value * @param parseNode The parse node to use to read the discriminator value and create the object * @returns {Hostname} */ export declare function createHostnameFromDiscriminatorValue(parseNode: ParseNode | undefined): ((instance?: Parsable) => Record void>); /** * Creates a new instance of the appropriate class based on discriminator value * @param parseNode The parse node to use to read the discriminator value and create the object * @returns {PullZoneCreate} */ export declare function createPullZoneCreateFromDiscriminatorValue(parseNode: ParseNode | undefined): ((instance?: Parsable) => Record void>); /** * Creates a new instance of the appropriate class based on discriminator value * @param parseNode The parse node to use to read the discriminator value and create the object * @returns {PullZone} */ export declare function createPullZoneFromDiscriminatorValue(parseNode: ParseNode | undefined): ((instance?: Parsable) => Record void>); /** * The deserialization information for the current model * @returns {Record void>} */ export declare function deserializeIntoBunnyAiImageBlueprint(bunnyAiImageBlueprint?: Partial | undefined): Record void>; /** * The deserialization information for the current model * @returns {Record void>} */ export declare function deserializeIntoBunnyAiImageBlueprint_Properties(bunnyAiImageBlueprint_Properties?: Partial | undefined): Record void>; /** * The deserialization information for the current model * @returns {Record void>} */ export declare function deserializeIntoHostname(hostname?: Partial | undefined): Record void>; /** * The deserialization information for the current model * @returns {Record void>} */ export declare function deserializeIntoPullZone(pullZone?: Partial | undefined): Record void>; /** * The deserialization information for the current model * @returns {Record void>} */ export declare function deserializeIntoPullZoneCreate(pullZoneCreate?: Partial | undefined): Record void>; export interface Hostname extends AdditionalDataHolder, Parsable { /** * Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. */ additionalData?: Record; /** * Contains the Base64Url encoded certificate for the hostname */ certificate?: string | null; /** * Contains the Base64Url encoded certificate key for the hostname */ certificateKey?: string | null; /** * Determines if the Force SSL feature is enabled */ forceSSL?: boolean | null; /** * Determines if the hostname has an SSL certificate configured */ hasCertificate?: boolean | null; /** * The unique ID of the hostname */ id?: number | null; /** * Determines if this is a system hostname controlled by bunny.net */ isSystemHostname?: boolean | null; /** * The hostname value for the domain name */ value?: string | null; } export interface PullZone extends AdditionalDataHolder, Parsable { /** * The list of extensions that will return the CORS headers */ accessControlOriginHeaderExtensions?: string[] | null; /** * Determines if the Add Canonical Header is enabled for this Pull Zone */ addCanonicalHeader?: boolean | null; /** * Determines if the Pull Zone should forward the current hostname to the origin */ addHostHeader?: boolean | null; /** * Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. */ additionalData?: Record; /** * The Pull Zone specific pricing discount for Africa region. */ africaDiscount?: number | null; /** * The list of referrer hostnames that are allowed to access the pull zone.Requests containing the header Referer: hostname that is not on the list will be rejected.If empty, all the referrers are allowed */ allowedReferrers?: string[] | null; /** * The Pull Zone specific pricing discount for Asia & Oceania region. */ asiaOceaniaDiscount?: number | null; /** * Determines if the AWS Signing is enabled */ aWSSigningEnabled?: boolean | null; /** * The AWS Signing region key */ aWSSigningKey?: string | null; /** * The AWS Signing region name */ aWSSigningRegionName?: string | null; /** * The AWS Signing region secret */ aWSSigningSecret?: string | null; /** * The list of blocked countries with the two-letter Alpha2 ISO codes */ blockedCountries?: string[] | null; /** * The list of IPs that are blocked from accessing the pull zone. Requests coming from the following IPs will be rejected. If empty, all the IPs will be allowed */ blockedIps?: string[] | null; /** * The list of referrer hostnames that are not allowed to access the pull zone. Requests containing the header Referer: hostname that is on the list will be rejected. If empty, all the referrers are allowed */ blockedReferrers?: string[] | null; /** * The BlockNoneReferrer property */ blockNoneReferrer?: boolean | null; /** * If true, POST requests to the zone will be blocked */ blockPostRequests?: boolean | null; /** * If true, access to root path will return a 403 error */ blockRootPathAccess?: boolean | null; /** * The list of budget redirected countries with the two-letter Alpha2 ISO codes */ budgetRedirectedCountries?: string[] | null; /** * The BunnyAiImageBlueprints property */ bunnyAiImageBlueprints?: BunnyAiImageBlueprint[] | null; /** * Excessive requests are delayed until their number exceeds the maximum burst size. */ burstSize?: number | null; /** * The override cache time for the pull zone */ cacheControlMaxAgeOverride?: number | null; /** * The override cache time for the pull zone for the end client */ cacheControlPublicMaxAgeOverride?: number | null; /** * Determines if bunny.net should be caching error responses */ cacheErrorResponses?: boolean | null; /** * The CacheVersion property */ cacheVersion?: number | null; /** * The CNAME domain of the pull zone for setting up custom hostnames */ cnameDomain?: string | null; /** * The number of connections limited per IP for this zone */ connectionLimitPerIPCount?: number | null; /** * Contains the list of vary parameters that will be used for vary cache by cookie string. If empty, cookie vary will not be used. */ cookieVaryParameters?: string[] | null; /** * Determines if the cookies are disabled for the pull zone */ disableCookies?: boolean | null; /** * If true, the built-in let's encrypt is disabled and requests are passed to the origin. */ disableLetsEncrypt?: boolean | null; /** * The ID of the DNS record tied to this pull zone */ dnsRecordId?: number | null; /** * The cached version of the DNS record value */ dnsRecordValue?: string | null; /** * The ID of the DNS zone tied to this pull zone */ dnsZoneId?: number | null; /** * The list of edge rules on this Pull Zone */ edgeRules?: EdgeRule[] | null; /** * The EdgeScriptExecutionPhase property */ edgeScriptExecutionPhase?: number | null; /** * The ID of the edge script that the pull zone is linked to */ edgeScriptId?: number | null; /** * Determines if the CORS headers should be enabled */ enableAccessControlOriginHeader?: boolean | null; /** * If set to true, any hostnames added to this Pull Zone will automatically enable SSL. */ enableAutoSSL?: boolean | null; /** * Determines if the AVIF Vary feature is enabled. */ enableAvifVary?: boolean | null; /** * The EnableBunnyImageAi property */ enableBunnyImageAi?: boolean | null; /** * Determines if the cache slice (Optimize for video) feature is enabled for the Pull Zone */ enableCacheSlice?: boolean | null; /** * Determines if the Cookie Vary feature is enabled. */ enableCookieVary?: boolean | null; /** * Determines if the Country Code Vary feature is enabled. */ enableCountryCodeVary?: boolean | null; /** * Determines if the Pull Zone is currently enabled, active and running */ enabled?: boolean | null; /** * Determines if the delivery from the Africa region is enabled for this pull zone */ enableGeoZoneAF?: boolean | null; /** * Determines if the delivery from the Asian / Oceanian region is enabled for this pull zone */ enableGeoZoneASIA?: boolean | null; /** * Determines if the delivery from the European region is enabled for this pull zone */ enableGeoZoneEU?: boolean | null; /** * Determines if the delivery from the South American region is enabled for this pull zone */ enableGeoZoneSA?: boolean | null; /** * Determines if the delivery from the North American region is enabled for this pull zone */ enableGeoZoneUS?: boolean | null; /** * Determines if the Hostname Vary feature is enabled. */ enableHostnameVary?: boolean | null; /** * Determines if the logging is enabled for this Pull Zone */ enableLogging?: boolean | null; /** * Determines if the Mobile Vary feature is enabled. */ enableMobileVary?: boolean | null; /** * If true the server will use the origin shield feature */ enableOriginShield?: boolean | null; /** * If set to true the query string ordering property is enabled. */ enableQueryStringOrdering?: boolean | null; /** * Determines if request coalescing is currently enabled. */ enableRequestCoalescing?: boolean | null; /** * The EnableSafeHop property */ enableSafeHop?: boolean | null; /** * Determines if smart caching is enabled for this zone */ enableSmartCache?: boolean | null; /** * Determines if the TLS 1 is enabled on the Pull Zone */ enableTLS1?: boolean | null; /** * Determines if the TLS 1.1 is enabled on the Pull Zone */ enableTLS11?: boolean | null; /** * Determines if the WebP Vary feature is enabled. */ enableWebPVary?: boolean | null; /** * Contains the custom error page code that will be returned */ errorPageCustomCode?: string | null; /** * Determines if custom error page code should be enabled. */ errorPageEnableCustomCode?: boolean | null; /** * Determines if the statuspage widget should be displayed on the error pages */ errorPageEnableStatuspageWidget?: boolean | null; /** * The statuspage code that will be used to build the status widget */ errorPageStatuspageCode?: string | null; /** * Determines if the error pages should be whitelabel or not */ errorPageWhitelabel?: boolean | null; /** * The Pull Zone specific pricing discount for EU and US region. */ eUUSDiscount?: number | null; /** * Determines if the zone will follow origin redirects */ followRedirects?: boolean | null; /** * The list of hostnames linked to this Pull Zone */ hostnames?: Hostname[] | null; /** * The unique ID of the pull zone. */ id?: number | null; /** * True if the Pull Zone is ignoring query strings when serving cached objects */ ignoreQueryStrings?: boolean | null; /** * The amount of data after the rate limit will be activated */ limitRateAfter?: number | null; /** * The maximum rate at which the zone will transfer data in kb/s. 0 for unlimited */ limitRatePerSecond?: number | null; /** * The LogAnonymizationType property */ logAnonymizationType?: number | null; /** * The LogFormat property */ logFormat?: number | null; /** * Determines if the log forwarding is enabled */ logForwardingEnabled?: boolean | null; /** * The LogForwardingFormat property */ logForwardingFormat?: number | null; /** * The log forwarding hostname */ logForwardingHostname?: string | null; /** * The log forwarding port */ logForwardingPort?: number | null; /** * The LogForwardingProtocol property */ logForwardingProtocol?: number | null; /** * The log forwarding token value */ logForwardingToken?: string | null; /** * Determines if the log anonymization should be enabled */ loggingIPAnonymizationEnabled?: boolean | null; /** * Determines if the permanent logging feature is enabled */ loggingSaveToStorage?: boolean | null; /** * The ID of the logging storage zone that is configured for this Pull Zone */ loggingStorageZoneId?: number | null; /** * The MagicContainersAppId property */ magicContainersAppId?: string | null; /** * The MagicContainersEndpointId property */ magicContainersEndpointId?: number | null; /** * The MiddlewareScriptId property */ middlewareScriptId?: number | null; /** * The monthly limit of bandwidth in bytes that the pullzone is allowed to use */ monthlyBandwidthLimit?: number | null; /** * The amount of bandwidth in bytes that the pull zone used this month */ monthlyBandwidthUsed?: number | null; /** * The total monthly charges for this so zone so far */ monthlyCharges?: number | null; /** * The name of the pull zone. */ name?: string | null; /** * Determines if the automatic image optimization should be enabled */ optimizerAutomaticOptimizationEnabled?: boolean | null; /** * Contains the list of optimizer classes */ optimizerClasses?: OptimizerClass[] | null; /** * Determines the maximum automatic image size for desktop clients */ optimizerDesktopMaxWidth?: number | null; /** * Determines if the optimizer should be enabled for this zone */ optimizerEnabled?: boolean | null; /** * Determines the image manipulation should be enabled */ optimizerEnableManipulationEngine?: boolean | null; /** * The OptimizerEnableUpscaling property */ optimizerEnableUpscaling?: boolean | null; /** * Determines if the WebP optimization should be enabled */ optimizerEnableWebP?: boolean | null; /** * Determines if the optimizer class list should be enforced */ optimizerForceClasses?: boolean | null; /** * Determines the image quality for desktop clients */ optimizerImageQuality?: number | null; /** * Determines if the CSS minification should be enabled */ optimizerMinifyCSS?: boolean | null; /** * Determines if the JavaScript minification should be enabled */ optimizerMinifyJavaScript?: boolean | null; /** * Determines the image quality for mobile clients */ optimizerMobileImageQuality?: number | null; /** * Determines the maximum automatic image size for mobile clients */ optimizerMobileMaxWidth?: number | null; /** * The OptimizerPricing property */ optimizerPricing?: number | null; /** * The OptimizerStaticHtmlEnabled property */ optimizerStaticHtmlEnabled?: boolean | null; /** * The OptimizerStaticHtmlWordPressBypassCookie property */ optimizerStaticHtmlWordPressBypassCookie?: string | null; /** * The OptimizerStaticHtmlWordPressPath property */ optimizerStaticHtmlWordPressPath?: string | null; /** * The OptimizerTunnelEnabled property */ optimizerTunnelEnabled?: boolean | null; /** * Determines if image watermarking should be enabled */ optimizerWatermarkEnabled?: boolean | null; /** * Sets the minimum image size to which the watermark will be added */ optimizerWatermarkMinImageSize?: number | null; /** * Sets the offset of the watermark image */ optimizerWatermarkOffset?: number | null; /** * The OptimizerWatermarkPosition property */ optimizerWatermarkPosition?: number | null; /** * Sets the URL of the watermark image */ optimizerWatermarkUrl?: string | null; /** * The amount of seconds to wait when connecting to the origin. Otherwise the request will fail or retry. */ originConnectTimeout?: number | null; /** * Determines the host header that will be sent to the origin */ originHostHeader?: string | null; /** * Returns the link short preview value for the pull zone origin connection. */ originLinkValue?: string | null; /** * The amount of seconds to wait when waiting for the origin reply. Otherwise the request will fail or retry. */ originResponseTimeout?: number | null; /** * The number of retries to the origin server */ originRetries?: number | null; /** * Determines if we should retry the request in case of a 5XX response. */ originRetry5XXResponses?: boolean | null; /** * Determines if we should retry the request in case of a connection timeout. */ originRetryConnectionTimeout?: boolean | null; /** * Determines the amount of time that the CDN should wait before retrying an origin request. */ originRetryDelay?: number | null; /** * Determines if we should retry the request in case of a response timeout. */ originRetryResponseTimeout?: boolean | null; /** * Determines if the origin shield concurrency limit is enabled. */ originShieldEnableConcurrencyLimit?: boolean | null; /** * Determines the number of maximum concurrent requests allowed to the origin. */ originShieldMaxConcurrentRequests?: number | null; /** * Determines the max number of origin requests that will remain in the queue */ originShieldMaxQueuedRequests?: number | null; /** * Determines the max queue wait time */ originShieldQueueMaxWaitTime?: number | null; /** * The zone code of the origin shield */ originShieldZoneCode?: string | null; /** * The OriginType property */ originType?: number | null; /** * The origin URL of the pull zone where the files are fetched from. */ originUrl?: string | null; /** * The IP of the storage zone used for Perma-Cache */ permaCacheStorageZoneId?: number | null; /** * The PermaCacheType property */ permaCacheType?: number | null; /** * The custom preloading screen code */ preloadingScreenCode?: string | null; /** * Determines if the custom preloader screen is enabled */ preloadingScreenCodeEnabled?: boolean | null; /** * The delay in milliseconds after which the preloading screen will be displayed */ preloadingScreenDelay?: number | null; /** * Determines if the preloading screen is currently enabled */ preloadingScreenEnabled?: boolean | null; /** * The preloading screen logo URL */ preloadingScreenLogoUrl?: string | null; /** * The PreloadingScreenShowOnFirstVisit property */ preloadingScreenShowOnFirstVisit?: boolean | null; /** * The PreloadingScreenTheme property */ preloadingScreenTheme?: number | null; /** * The custom price override for this zone */ priceOverride?: number | null; /** * Contains the list of vary parameters that will be used for vary cache by query string. If empty, all parameters will be used to construct the key */ queryStringVaryParameters?: string[] | null; /** * Determines the lock time for coalesced requests. */ requestCoalescingTimeout?: number | null; /** * Max number of requests per IP per second */ requestLimit?: number | null; /** * The list of routing filters enabled for this zone */ routingFilters?: PullZone_RoutingFilters[] | null; /** * The ShieldDDosProtectionEnabled property */ shieldDDosProtectionEnabled?: boolean | null; /** * The ShieldDDosProtectionType property */ shieldDDosProtectionType?: number | null; /** * The Pull Zone specific pricing discount for South America region. */ southAmericaDiscount?: number | null; /** * The StickySessionClientHeaders property */ stickySessionClientHeaders?: UntypedNode | null; /** * The StickySessionCookieName property */ stickySessionCookieName?: string | null; /** * The StickySessionType property */ stickySessionType?: number | null; /** * The ID of the storage zone that the pull zone is linked to */ storageZoneId?: number | null; /** * The Suspended property */ suspended?: boolean | null; /** * The Type property */ type?: number | null; /** * Determines if cache update is performed in the background. */ useBackgroundUpdate?: boolean | null; /** * The UserId property */ userId?: string | null; /** * Determines if we should use stale cache while the origin is offline */ useStaleWhileOffline?: boolean | null; /** * Determines if we should use stale cache while cache is updating */ useStaleWhileUpdating?: boolean | null; /** * Determines if the Pull Zone should verify the origin SSL certificate */ verifyOriginSSL?: boolean | null; /** * The ID of the video library that the zone is linked to */ videoLibraryId?: number | null; /** * True if the URL secure token authentication security is enabled */ zoneSecurityEnabled?: boolean | null; /** * True if the zone security hash should include the remote IP */ zoneSecurityIncludeHashRemoteIP?: boolean | null; /** * The security key used for secure URL token authentication */ zoneSecurityKey?: string | null; } export type PullZone_RoutingFilters = (typeof PullZone_RoutingFiltersObject)[keyof typeof PullZone_RoutingFiltersObject]; export interface PullZoneCreate extends AdditionalDataHolder, Parsable { /** * The list of extensions that will return the CORS headers */ accessControlOriginHeaderExtensions?: string[] | null; /** * Determines if the Add Canonical Header is enabled for this Pull Zone */ addCanonicalHeader?: boolean | null; /** * Determines if the Pull Zone should forward the current hostname to the origin */ addHostHeader?: boolean | null; /** * Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. */ additionalData?: Record; /** * The list of referrer hostnames that are allowed to access the pull zone.Requests containing the header Referer: hostname that is not on the list will be rejected.If empty, all the referrers are allowed */ allowedReferrers?: string[] | null; /** * Determines if the AWS Signing is enabled */ aWSSigningEnabled?: boolean | null; /** * The AWS Signing region key */ aWSSigningKey?: string | null; /** * The AWS Signing region name */ aWSSigningRegionName?: string | null; /** * The AWS Signing region secret */ aWSSigningSecret?: string | null; /** * The list of blocked countries with the two-letter Alpha2 ISO codes */ blockedCountries?: string[] | null; /** * The list of IPs that are blocked from accessing the pull zone. Requests coming from the following IPs will be rejected. If empty, all the IPs will be allowed */ blockedIps?: string[] | null; /** * The list of referrer hostnames that are not allowed to access the pull zone. Requests containing the header Referer: hostname that is on the list will be rejected. If empty, all the referrers are allowed */ blockedReferrers?: string[] | null; /** * The BlockNoneReferrer property */ blockNoneReferrer?: boolean | null; /** * If true, POST requests to the zone will be blocked */ blockPostRequests?: boolean | null; /** * If true, access to root path will return a 403 error */ blockRootPathAccess?: boolean | null; /** * The list of budget redirected countries with the two-letter Alpha2 ISO codes */ budgetRedirectedCountries?: string[] | null; /** * The BunnyAiImageBlueprints property */ bunnyAiImageBlueprints?: BunnyAiImageBlueprint[] | null; /** * Excessive requests are delayed until their number exceeds the maximum burst size. */ burstSize?: number | null; /** * Sets the browser cache control override setting for this zone * @deprecated */ cacheControlBrowserMaxAgeOverride?: number | null; /** * The override cache time for the pull zone */ cacheControlMaxAgeOverride?: number | null; /** * The override cache time for the pull zone for the end client */ cacheControlPublicMaxAgeOverride?: number | null; /** * Determines if bunny.net should be caching error responses */ cacheErrorResponses?: boolean | null; /** * The number of connections limited per IP for this zone */ connectionLimitPerIPCount?: number | null; /** * Contains the list of vary parameters that will be used for vary cache by cookie string. If empty, cookie vary will not be used. */ cookieVaryParameters?: string[] | null; /** * Determines if the cookies are disabled for the pull zone */ disableCookies?: boolean | null; /** * If true, the built-in let's encrypt is disabled and requests are passed to the origin. */ disableLetsEncrypt?: boolean | null; /** * Determines the origin port of the pull zone. */ dnsOriginPort?: number | null; /** * Determines the origin scheme of the pull zone. */ dnsOriginScheme?: string | null; /** * The list of edge rules on this Pull Zone */ edgeRules?: EdgeRule[] | null; /** * The EdgeScriptExecutionPhase property */ edgeScriptExecutionPhase?: number | null; /** * The ID of the edge script that the pull zone is linked to */ edgeScriptId?: number | null; /** * Determines if the CORS headers should be enabled */ enableAccessControlOriginHeader?: boolean | null; /** * If set to true, any hostnames added to this Pull Zone will automatically enable SSL. */ enableAutoSSL?: boolean | null; /** * Determines if the AVIF Vary feature is enabled. */ enableAvifVary?: boolean | null; /** * The EnableBunnyImageAi property */ enableBunnyImageAi?: boolean | null; /** * Determines if the cache slice (Optimize for video) feature is enabled for the Pull Zone */ enableCacheSlice?: boolean | null; /** * Determines if the Cookie Vary feature is enabled. */ enableCookieVary?: boolean | null; /** * Determines if the Country Code Vary feature is enabled. */ enableCountryCodeVary?: boolean | null; /** * Determines if the delivery from the Africa region is enabled for this pull zone */ enableGeoZoneAF?: boolean | null; /** * Determines if the delivery from the Asian / Oceanian region is enabled for this pull zone */ enableGeoZoneASIA?: boolean | null; /** * Determines if the delivery from the European region is enabled for this pull zone */ enableGeoZoneEU?: boolean | null; /** * Determines if the delivery from the South American region is enabled for this pull zone */ enableGeoZoneSA?: boolean | null; /** * Determines if the delivery from the North American region is enabled for this pull zone */ enableGeoZoneUS?: boolean | null; /** * Determines if the Hostname Vary feature is enabled. */ enableHostnameVary?: boolean | null; /** * Determines if the logging is enabled for this Pull Zone */ enableLogging?: boolean | null; /** * Determines if the Mobile Vary feature is enabled. */ enableMobileVary?: boolean | null; /** * If true the server will use the origin shield feature */ enableOriginShield?: boolean | null; /** * If set to true the query string ordering property is enabled. */ enableQueryStringOrdering?: boolean | null; /** * Determines if request coalescing is currently enabled. */ enableRequestCoalescing?: boolean | null; /** * The EnableSafeHop property */ enableSafeHop?: boolean | null; /** * Determines if smart caching is enabled for this zone */ enableSmartCache?: boolean | null; /** * Determines if the TLS 1 is enabled on the Pull Zone */ enableTLS1?: boolean | null; /** * Determines if the TLS 1.1 is enabled on the Pull Zone */ enableTLS11?: boolean | null; /** * Determines if the WebP Vary feature is enabled. */ enableWebPVary?: boolean | null; /** * Contains the custom error page code that will be returned */ errorPageCustomCode?: string | null; /** * Determines if custom error page code should be enabled. */ errorPageEnableCustomCode?: boolean | null; /** * Determines if the statuspage widget should be displayed on the error pages */ errorPageEnableStatuspageWidget?: boolean | null; /** * The statuspage code that will be used to build the status widget */ errorPageStatuspageCode?: string | null; /** * Determines if the error pages should be whitelabel or not */ errorPageWhitelabel?: boolean | null; /** * Determines if the zone will follow origin redirects */ followRedirects?: boolean | null; /** * True if the Pull Zone is ignoring query strings when serving cached objects */ ignoreQueryStrings?: boolean | null; /** * The amount of data after the rate limit will be activated */ limitRateAfter?: number | null; /** * The maximum rate at which the zone will transfer data in kb/s. 0 for unlimited */ limitRatePerSecond?: number | null; /** * The LogAnonymizationType property */ logAnonymizationType?: number | null; /** * The LogFormat property */ logFormat?: number | null; /** * Determines if the log forwarding is enabled */ logForwardingEnabled?: boolean | null; /** * The LogForwardingFormat property */ logForwardingFormat?: number | null; /** * The log forwarding hostname */ logForwardingHostname?: string | null; /** * The log forwarding port */ logForwardingPort?: number | null; /** * The LogForwardingProtocol property */ logForwardingProtocol?: number | null; /** * The log forwarding token value */ logForwardingToken?: string | null; /** * Determines if the log anonymization should be enabled */ loggingIPAnonymizationEnabled?: boolean | null; /** * Determines if the permanent logging feature is enabled */ loggingSaveToStorage?: boolean | null; /** * The ID of the logging storage zone that is configured for this Pull Zone */ loggingStorageZoneId?: number | null; /** * The MagicContainersAppId property */ magicContainersAppId?: string | null; /** * The MagicContainersEndpointId property */ magicContainersEndpointId?: number | null; /** * The MiddlewareScriptId property */ middlewareScriptId?: number | null; /** * The monthly limit of bandwidth in bytes that the pullzone is allowed to use */ monthlyBandwidthLimit?: number | null; /** * The total monthly charges for this so zone so far */ monthlyCharges?: number | null; /** * The name of the pull zone. */ name?: string | null; /** * Determines if the automatic image optimization should be enabled */ optimizerAutomaticOptimizationEnabled?: boolean | null; /** * Contains the list of optimizer classes */ optimizerClasses?: OptimizerClass[] | null; /** * Determines the maximum automatic image size for desktop clients */ optimizerDesktopMaxWidth?: number | null; /** * Determines if the optimizer should be enabled for this zone */ optimizerEnabled?: boolean | null; /** * Determines the image manipulation should be enabled */ optimizerEnableManipulationEngine?: boolean | null; /** * The OptimizerEnableUpscaling property */ optimizerEnableUpscaling?: boolean | null; /** * Determines if the WebP optimization should be enabled */ optimizerEnableWebP?: boolean | null; /** * Determines if the optimizer class list should be enforced */ optimizerForceClasses?: boolean | null; /** * Determines the image quality for desktop clients */ optimizerImageQuality?: number | null; /** * Determines if the CSS minification should be enabled */ optimizerMinifyCSS?: boolean | null; /** * Determines if the JavaScript minification should be enabled */ optimizerMinifyJavaScript?: boolean | null; /** * Determines the image quality for mobile clients */ optimizerMobileImageQuality?: number | null; /** * Determines the maximum automatic image size for mobile clients */ optimizerMobileMaxWidth?: number | null; /** * The OptimizerStaticHtmlEnabled property */ optimizerStaticHtmlEnabled?: boolean | null; /** * The OptimizerStaticHtmlWordPressBypassCookie property */ optimizerStaticHtmlWordPressBypassCookie?: string | null; /** * The OptimizerStaticHtmlWordPressPath property */ optimizerStaticHtmlWordPressPath?: string | null; /** * The OptimizerTunnelEnabled property */ optimizerTunnelEnabled?: boolean | null; /** * Determines if image watermarking should be enabled */ optimizerWatermarkEnabled?: boolean | null; /** * Sets the minimum image size to which the watermark will be added */ optimizerWatermarkMinImageSize?: number | null; /** * Sets the offset of the watermark image */ optimizerWatermarkOffset?: number | null; /** * The OptimizerWatermarkPosition property */ optimizerWatermarkPosition?: number | null; /** * Sets the URL of the watermark image */ optimizerWatermarkUrl?: string | null; /** * The amount of seconds to wait when connecting to the origin. Otherwise the request will fail or retry. */ originConnectTimeout?: number | null; /** * Determines the host header that will be sent to the origin */ originHostHeader?: string | null; /** * The amount of seconds to wait when waiting for the origin reply. Otherwise the request will fail or retry. */ originResponseTimeout?: number | null; /** * The number of retries to the origin server */ originRetries?: number | null; /** * Determines if we should retry the request in case of a 5XX response. */ originRetry5XXResponses?: boolean | null; /** * Determines if we should retry the request in case of a connection timeout. */ originRetryConnectionTimeout?: boolean | null; /** * Determines the amount of time that the CDN should wait before retrying an origin request. */ originRetryDelay?: number | null; /** * Determines if we should retry the request in case of a response timeout. */ originRetryResponseTimeout?: boolean | null; /** * Determines if the origin shield concurrency limit is enabled. */ originShieldEnableConcurrencyLimit?: boolean | null; /** * Determines the number of maximum concurrent requests allowed to the origin. */ originShieldMaxConcurrentRequests?: number | null; /** * Determines the max number of origin requests that will remain in the queue */ originShieldMaxQueuedRequests?: number | null; /** * Determines the max queue wait time */ originShieldQueueMaxWaitTime?: number | null; /** * The zone code of the origin shield */ originShieldZoneCode?: string | null; /** * The OriginType property */ originType?: number | null; /** * The origin URL of the pull zone where the files are fetched from. */ originUrl?: string | null; /** * The IP of the storage zone used for Perma-Cache */ permaCacheStorageZoneId?: number | null; /** * The PermaCacheType property */ permaCacheType?: number | null; /** * The custom preloading screen code */ preloadingScreenCode?: string | null; /** * Determines if the custom preloader screen is enabled */ preloadingScreenCodeEnabled?: boolean | null; /** * The delay in milliseconds after which the preloading screen will be displayed */ preloadingScreenDelay?: number | null; /** * Determines if the preloading screen is currently enabled */ preloadingScreenEnabled?: boolean | null; /** * The preloading screen logo URL */ preloadingScreenLogoUrl?: string | null; /** * The PreloadingScreenShowOnFirstVisit property */ preloadingScreenShowOnFirstVisit?: boolean | null; /** * The PreloadingScreenTheme property */ preloadingScreenTheme?: number | null; /** * Contains the list of vary parameters that will be used for vary cache by query string. If empty, all parameters will be used to construct the key */ queryStringVaryParameters?: string[] | null; /** * Determines the lock time for coalesced requests. */ requestCoalescingTimeout?: number | null; /** * Max number of requests per IP per second */ requestLimit?: number | null; /** * The list of routing filters enabled for this zone */ routingFilters?: PullZoneCreate_RoutingFilters[] | null; /** * The ShieldDDosProtectionEnabled property */ shieldDDosProtectionEnabled?: boolean | null; /** * The ShieldDDosProtectionType property */ shieldDDosProtectionType?: number | null; /** * The StickySessionClientHeaders property */ stickySessionClientHeaders?: UntypedNode | null; /** * The StickySessionCookieName property */ stickySessionCookieName?: string | null; /** * The StickySessionType property */ stickySessionType?: number | null; /** * The ID of the storage zone that the pull zone is linked to */ storageZoneId?: number | null; /** * The Type property */ type?: number | null; /** * Determines if cache update is performed in the background. */ useBackgroundUpdate?: boolean | null; /** * Determines if we should use stale cache while the origin is offline */ useStaleWhileOffline?: boolean | null; /** * Determines if we should use stale cache while cache is updating */ useStaleWhileUpdating?: boolean | null; /** * Determines if the Pull Zone should verify the origin SSL certificate */ verifyOriginSSL?: boolean | null; /** * Determines the enabled WAF rule groups */ wAFDisabledRuleGroups?: string[] | null; /** * Determines the disabled WAF rules */ wAFDisabledRules?: string[] | null; /** * Determines if WAF should be enabled on the zone */ wAFEnabled?: boolean | null; /** * Determines if WAF should enable request headers logging */ wAFEnableRequestHeaderLogging?: boolean | null; /** * Determines the list of headers that will be ignored in the WAF logs */ wAFRequestHeaderIgnores?: boolean | null; /** * True if the URL secure token authentication security is enabled */ zoneSecurityEnabled?: boolean | null; /** * True if the zone security hash should include the remote IP */ zoneSecurityIncludeHashRemoteIP?: boolean | null; } export type PullZoneCreate_RoutingFilters = (typeof PullZoneCreate_RoutingFiltersObject)[keyof typeof PullZoneCreate_RoutingFiltersObject]; /** * Serializes information the current object * @param writer Serialization writer to use to serialize this model */ export declare function serializeBunnyAiImageBlueprint(writer: SerializationWriter, bunnyAiImageBlueprint?: Partial | undefined | null): void; /** * Serializes information the current object * @param writer Serialization writer to use to serialize this model */ export declare function serializeBunnyAiImageBlueprint_Properties(writer: SerializationWriter, bunnyAiImageBlueprint_Properties?: Partial | undefined | null): void; /** * Serializes information the current object * @param writer Serialization writer to use to serialize this model */ export declare function serializeHostname(writer: SerializationWriter, hostname?: Partial | undefined | null): void; /** * Serializes information the current object * @param writer Serialization writer to use to serialize this model */ export declare function serializePullZone(writer: SerializationWriter, pullZone?: Partial | undefined | null): void; /** * Serializes information the current object * @param writer Serialization writer to use to serialize this model */ export declare function serializePullZoneCreate(writer: SerializationWriter, pullZoneCreate?: Partial | undefined | null): void; export declare const PullZone_RoutingFiltersObject: { readonly All: "all"; readonly Eu: "eu"; }; export declare const PullZoneCreate_RoutingFiltersObject: { readonly All: "all"; readonly Eu: "eu"; };