import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.smartwebsecurity.v1"; /** A SecurityProfile resource. */ export interface SecurityProfile { /** ID of the security profile. */ id: string; /** ID of the folder that the security profile belongs to. */ folderId: string; /** Labels as `` key:value `` pairs. Maximum of 64 per resource. */ labels: { [key: string]: string; }; /** Name of the security profile. The name is unique within the folder. 1-50 characters long. */ name: string; /** Optional description of the security profile. */ description: string; /** Action to perform if none of rules matched. */ defaultAction: SecurityProfile_DefaultAction; /** List of security rules. */ securityRules: SecurityRule[]; /** Creation timestamp in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. */ createdAt?: Date; /** ID of the cloud that the security profile belongs to. */ cloudId: string; /** Captcha ID to use with this security profile. Set empty to use default. */ captchaId: string; /** Advanced rate limiter profile ID to use with this security profile. Set empty to use default. */ advancedRateLimiterProfileId: string; /** Parameters for request body analyzer. */ analyzeRequestBody?: SecurityProfile_AnalyzeRequestBody; } /** Action to perform if none of rules matched. */ export declare enum SecurityProfile_DefaultAction { DEFAULT_ACTION_UNSPECIFIED = 0, /** ALLOW - Pass request to service. */ ALLOW = 1, /** DENY - Deny request. */ DENY = 2, UNRECOGNIZED = -1 } export declare function securityProfile_DefaultActionFromJSON(object: any): SecurityProfile_DefaultAction; export declare function securityProfile_DefaultActionToJSON(object: SecurityProfile_DefaultAction): string; export interface SecurityProfile_AnalyzeRequestBody { /** Maximum size of body to pass to analyzer. In kilobytes. */ sizeLimit: number; /** Action to perform if maximum size of body exceeded. */ sizeLimitAction: SecurityProfile_AnalyzeRequestBody_Action; } /** Action to perform if maximum size of body exceeded. */ export declare enum SecurityProfile_AnalyzeRequestBody_Action { ACTION_UNSPECIFIED = 0, /** IGNORE - Ignore body. */ IGNORE = 1, /** DENY - Deny request. */ DENY = 2, UNRECOGNIZED = -1 } export declare function securityProfile_AnalyzeRequestBody_ActionFromJSON(object: any): SecurityProfile_AnalyzeRequestBody_Action; export declare function securityProfile_AnalyzeRequestBody_ActionToJSON(object: SecurityProfile_AnalyzeRequestBody_Action): string; export interface SecurityProfile_LabelsEntry { key: string; value: string; } /** A SecurityRule object, see [Rules](/docs/smartwebsecurity/concepts/rules). */ export interface SecurityRule { /** Name of the rule. The name is unique within the security profile. 1-50 characters long. */ name: string; /** * Determines the priority for checking the incoming traffic. * Enter an integer within the range of 1 and 999999. * The rule priority must be unique within the entire security profile. * A lower numeric value means a higher priority. * The default_action has the lowest priority. */ priority: number; /** * This mode allows you to test your security profile or a single rule. * For example, you can have the number of alarms for a specific rule displayed. * Note: if this option is true, no real action affecting your traffic regarding this rule will be taken. */ dryRun: boolean; /** Rule actions, see [Rule actions](/docs/smartwebsecurity/concepts/rules#rule-action). */ ruleCondition?: SecurityRule_RuleCondition | undefined; /** Smart Protection rule, see [Smart Protection rules](/docs/smartwebsecurity/concepts/rules#smart-protection-rules). */ smartProtection?: SecurityRule_SmartProtection | undefined; /** Web Application Firewall (WAF) rule, see [WAF rules](/docs/smartwebsecurity/concepts/rules#waf-rules). */ waf?: SecurityRule_Waf | undefined; /** Optional description of the rule. 0-512 characters long. */ description: string; } /** RuleCondition object. */ export interface SecurityRule_RuleCondition { /** Action to perform if this rule matched. */ action: SecurityRule_RuleCondition_Action; /** The condition for matching the rule. */ condition?: Condition; } /** Type of action to perform if this rule matched. */ export declare enum SecurityRule_RuleCondition_Action { ACTION_UNSPECIFIED = 0, /** ALLOW - Pass request to service. */ ALLOW = 1, /** DENY - Deny request. */ DENY = 2, UNRECOGNIZED = -1 } export declare function securityRule_RuleCondition_ActionFromJSON(object: any): SecurityRule_RuleCondition_Action; export declare function securityRule_RuleCondition_ActionToJSON(object: SecurityRule_RuleCondition_Action): string; /** SmartProtection object. */ export interface SecurityRule_SmartProtection { /** Mode of protection. */ mode: SecurityRule_SmartProtection_Mode; /** The condition for matching the rule. */ condition?: Condition; } /** Mode of protection. */ export declare enum SecurityRule_SmartProtection_Mode { MODE_UNSPECIFIED = 0, /** * FULL - Full protection means that the traffic will be checked based on ML models and behavioral analysis, * with suspicious requests being sent to SmartCaptcha. */ FULL = 1, /** * API - API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious * requests to SmartCaptcha. The suspicious requests will be blocked. */ API = 2, UNRECOGNIZED = -1 } export declare function securityRule_SmartProtection_ModeFromJSON(object: any): SecurityRule_SmartProtection_Mode; export declare function securityRule_SmartProtection_ModeToJSON(object: SecurityRule_SmartProtection_Mode): string; /** Waf object. */ export interface SecurityRule_Waf { /** Mode of protection. */ mode: SecurityRule_Waf_Mode; /** The condition for matching the rule. */ condition?: Condition; /** ID of WAF profile to use in this rule. */ wafProfileId: string; } /** Mode of protection. */ export declare enum SecurityRule_Waf_Mode { MODE_UNSPECIFIED = 0, /** * FULL - Full protection means that the traffic will be checked based on ML models and behavioral analysis, * with suspicious requests being sent to SmartCaptcha. */ FULL = 1, /** * API - API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious * requests to SmartCaptcha. The suspicious requests will be blocked. */ API = 2, UNRECOGNIZED = -1 } export declare function securityRule_Waf_ModeFromJSON(object: any): SecurityRule_Waf_Mode; export declare function securityRule_Waf_ModeToJSON(object: SecurityRule_Waf_Mode): string; /** * Condition object. AND semantics implied. * See [documentation](/docs/smartwebsecurity/concepts/conditions) for matchers description. */ export interface Condition { /** Match authority (Host header). */ authority?: Condition_AuthorityMatcher; /** Match HTTP method. */ httpMethod?: Condition_HttpMethodMatcher; /** Match Request URI. */ requestUri?: Condition_RequestUriMatcher; /** Match HTTP headers. */ headers: Condition_HeaderMatcher[]; /** Match IP. */ sourceIp?: Condition_IpMatcher; } /** StringMatcher object. */ export interface Condition_StringMatcher { exactMatch: string | undefined; exactNotMatch: string | undefined; prefixMatch: string | undefined; prefixNotMatch: string | undefined; pireRegexMatch: string | undefined; pireRegexNotMatch: string | undefined; } /** HttpMethodMatcher object. */ export interface Condition_HttpMethodMatcher { /** List of HTTP methods. OR semantics implied. */ httpMethods: Condition_StringMatcher[]; } /** AuthorityMatcher object. */ export interface Condition_AuthorityMatcher { /** List of authorities. OR semantics implied. */ authorities: Condition_StringMatcher[]; } /** RequestUriMatcher object. AND semantics implied. */ export interface Condition_RequestUriMatcher { /** Path of the URI [RFC3986](https://datatracker.ietf.org/doc/html/rfc3986#section-3.3). */ path?: Condition_StringMatcher; /** List of query matchers. AND semantics implied. */ queries: Condition_QueryMatcher[]; } /** QueryMatcher object. */ export interface Condition_QueryMatcher { /** Key of the query parameter. */ key: string; /** Value of the query parameter. */ value?: Condition_StringMatcher; } /** HeaderMatcher object. */ export interface Condition_HeaderMatcher { /** Name of header (case insensitive). */ name: string; /** Value of the header. */ value?: Condition_StringMatcher; } /** IpMatcher object. AND semantics implied. */ export interface Condition_IpMatcher { ipRangesMatch?: Condition_IpRangesMatcher; ipRangesNotMatch?: Condition_IpRangesMatcher; geoIpMatch?: Condition_GeoIpMatcher; geoIpNotMatch?: Condition_GeoIpMatcher; } /** IpRangesMatcher object. */ export interface Condition_IpRangesMatcher { /** List of IP ranges. OR semantics implied. */ ipRanges: string[]; } /** GeoIpMatcher object. */ export interface Condition_GeoIpMatcher { /** ISO 3166-1 alpha 2. OR semantics implied. */ locations: string[]; } export declare const SecurityProfile: { encode(message: SecurityProfile, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SecurityProfile; fromJSON(object: any): SecurityProfile; toJSON(message: SecurityProfile): unknown; fromPartial, never>) | undefined; name?: string | undefined; description?: string | undefined; defaultAction?: SecurityProfile_DefaultAction | undefined; securityRules?: ({ name?: string | undefined; priority?: number | undefined; dryRun?: boolean | undefined; ruleCondition?: { action?: SecurityRule_RuleCondition_Action | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; } | undefined; smartProtection?: { mode?: SecurityRule_SmartProtection_Mode | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; } | undefined; waf?: { mode?: SecurityRule_Waf_Mode | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; wafProfileId?: string | undefined; } | undefined; description?: string | undefined; }[] & ({ name?: string | undefined; priority?: number | undefined; dryRun?: boolean | undefined; ruleCondition?: { action?: SecurityRule_RuleCondition_Action | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; } | undefined; smartProtection?: { mode?: SecurityRule_SmartProtection_Mode | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; } | undefined; waf?: { mode?: SecurityRule_Waf_Mode | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; wafProfileId?: string | undefined; } | undefined; description?: string | undefined; } & { name?: string | undefined; priority?: number | undefined; dryRun?: boolean | undefined; ruleCondition?: ({ action?: SecurityRule_RuleCondition_Action | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; } & { action?: SecurityRule_RuleCondition_Action | undefined; condition?: ({ authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } & { authority?: ({ authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { authorities?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; smartProtection?: ({ mode?: SecurityRule_SmartProtection_Mode | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; } & { mode?: SecurityRule_SmartProtection_Mode | undefined; condition?: ({ authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } & { authority?: ({ authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { authorities?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; waf?: ({ mode?: SecurityRule_Waf_Mode | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; wafProfileId?: string | undefined; } & { mode?: SecurityRule_Waf_Mode | undefined; condition?: ({ authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } & { authority?: ({ authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { authorities?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; wafProfileId?: string | undefined; } & Record, never>) | undefined; description?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; createdAt?: Date | undefined; cloudId?: string | undefined; captchaId?: string | undefined; advancedRateLimiterProfileId?: string | undefined; analyzeRequestBody?: ({ sizeLimit?: number | undefined; sizeLimitAction?: SecurityProfile_AnalyzeRequestBody_Action | undefined; } & { sizeLimit?: number | undefined; sizeLimitAction?: SecurityProfile_AnalyzeRequestBody_Action | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): SecurityProfile; }; export declare const SecurityProfile_AnalyzeRequestBody: { encode(message: SecurityProfile_AnalyzeRequestBody, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SecurityProfile_AnalyzeRequestBody; fromJSON(object: any): SecurityProfile_AnalyzeRequestBody; toJSON(message: SecurityProfile_AnalyzeRequestBody): unknown; fromPartial, never>>(object: I): SecurityProfile_AnalyzeRequestBody; }; export declare const SecurityProfile_LabelsEntry: { encode(message: SecurityProfile_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SecurityProfile_LabelsEntry; fromJSON(object: any): SecurityProfile_LabelsEntry; toJSON(message: SecurityProfile_LabelsEntry): unknown; fromPartial, never>>(object: I): SecurityProfile_LabelsEntry; }; export declare const SecurityRule: { encode(message: SecurityRule, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SecurityRule; fromJSON(object: any): SecurityRule; toJSON(message: SecurityRule): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; smartProtection?: ({ mode?: SecurityRule_SmartProtection_Mode | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; } & { mode?: SecurityRule_SmartProtection_Mode | undefined; condition?: ({ authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } & { authority?: ({ authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { authorities?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; waf?: ({ mode?: SecurityRule_Waf_Mode | undefined; condition?: { authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } | undefined; wafProfileId?: string | undefined; } & { mode?: SecurityRule_Waf_Mode | undefined; condition?: ({ authority?: { authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; httpMethod?: { httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } | undefined; requestUri?: { path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } | undefined; headers?: { name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; sourceIp?: { ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } | undefined; } & { authority?: ({ authorities?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { authorities?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; wafProfileId?: string | undefined; } & Record, never>) | undefined; description?: string | undefined; } & Record, never>>(object: I): SecurityRule; }; export declare const SecurityRule_RuleCondition: { encode(message: SecurityRule_RuleCondition, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SecurityRule_RuleCondition; fromJSON(object: any): SecurityRule_RuleCondition; toJSON(message: SecurityRule_RuleCondition): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): SecurityRule_RuleCondition; }; export declare const SecurityRule_SmartProtection: { encode(message: SecurityRule_SmartProtection, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SecurityRule_SmartProtection; fromJSON(object: any): SecurityRule_SmartProtection; toJSON(message: SecurityRule_SmartProtection): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): SecurityRule_SmartProtection; }; export declare const SecurityRule_Waf: { encode(message: SecurityRule_Waf, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SecurityRule_Waf; fromJSON(object: any): SecurityRule_Waf; toJSON(message: SecurityRule_Waf): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; wafProfileId?: string | undefined; } & Record, never>>(object: I): SecurityRule_Waf; }; export declare const Condition: { encode(message: Condition, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition; fromJSON(object: any): Condition; toJSON(message: Condition): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; httpMethod?: ({ httpMethods?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] | undefined; } & { httpMethods?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; }[] & ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; requestUri?: ({ path?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; queries?: { key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] | undefined; } & { path?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>) | undefined; headers?: ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ name?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { name?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; sourceIp?: ({ ipRangesMatch?: { ipRanges?: string[] | undefined; } | undefined; ipRangesNotMatch?: { ipRanges?: string[] | undefined; } | undefined; geoIpMatch?: { locations?: string[] | undefined; } | undefined; geoIpNotMatch?: { locations?: string[] | undefined; } | undefined; } & { ipRangesMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): Condition; }; export declare const Condition_StringMatcher: { encode(message: Condition_StringMatcher, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition_StringMatcher; fromJSON(object: any): Condition_StringMatcher; toJSON(message: Condition_StringMatcher): unknown; fromPartial, never>>(object: I): Condition_StringMatcher; }; export declare const Condition_HttpMethodMatcher: { encode(message: Condition_HttpMethodMatcher, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition_HttpMethodMatcher; fromJSON(object: any): Condition_HttpMethodMatcher; toJSON(message: Condition_HttpMethodMatcher): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): Condition_HttpMethodMatcher; }; export declare const Condition_AuthorityMatcher: { encode(message: Condition_AuthorityMatcher, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition_AuthorityMatcher; fromJSON(object: any): Condition_AuthorityMatcher; toJSON(message: Condition_AuthorityMatcher): unknown; fromPartial, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): Condition_AuthorityMatcher; }; export declare const Condition_RequestUriMatcher: { encode(message: Condition_RequestUriMatcher, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition_RequestUriMatcher; fromJSON(object: any): Condition_RequestUriMatcher; toJSON(message: Condition_RequestUriMatcher): unknown; fromPartial, never>) | undefined; queries?: ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; }[] & ({ key?: string | undefined; value?: { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } | undefined; } & { key?: string | undefined; value?: ({ exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & { exactMatch?: string | undefined; exactNotMatch?: string | undefined; prefixMatch?: string | undefined; prefixNotMatch?: string | undefined; pireRegexMatch?: string | undefined; pireRegexNotMatch?: string | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; } & Record, never>>(object: I): Condition_RequestUriMatcher; }; export declare const Condition_QueryMatcher: { encode(message: Condition_QueryMatcher, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition_QueryMatcher; fromJSON(object: any): Condition_QueryMatcher; toJSON(message: Condition_QueryMatcher): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): Condition_QueryMatcher; }; export declare const Condition_HeaderMatcher: { encode(message: Condition_HeaderMatcher, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition_HeaderMatcher; fromJSON(object: any): Condition_HeaderMatcher; toJSON(message: Condition_HeaderMatcher): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): Condition_HeaderMatcher; }; export declare const Condition_IpMatcher: { encode(message: Condition_IpMatcher, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition_IpMatcher; fromJSON(object: any): Condition_IpMatcher; toJSON(message: Condition_IpMatcher): unknown; fromPartial, never>) | undefined; } & Record, never>) | undefined; ipRangesNotMatch?: ({ ipRanges?: string[] | undefined; } & { ipRanges?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; geoIpNotMatch?: ({ locations?: string[] | undefined; } & { locations?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): Condition_IpMatcher; }; export declare const Condition_IpRangesMatcher: { encode(message: Condition_IpRangesMatcher, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition_IpRangesMatcher; fromJSON(object: any): Condition_IpRangesMatcher; toJSON(message: Condition_IpRangesMatcher): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): Condition_IpRangesMatcher; }; export declare const Condition_GeoIpMatcher: { encode(message: Condition_GeoIpMatcher, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Condition_GeoIpMatcher; fromJSON(object: any): Condition_GeoIpMatcher; toJSON(message: Condition_GeoIpMatcher): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): Condition_GeoIpMatcher; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact; } & Record>, never>; export {};