/**
 * Cloudflare DDOS-PROTECTION API
 *
 * Generated from Cloudflare TypeScript SDK.
 * DO NOT EDIT - regenerate with: bun scripts/generate.ts --service ddos-protection
 */
import * as Schema from "effect/Schema";
import type * as HttpClient from "effect/unstable/http/HttpClient";
import * as API from "../client/api.ts";
import type { Credentials } from "../credentials.ts";
import { type DefaultErrors } from "../errors.ts";
export interface ListAdvancedTcpProtectionAllowlistsRequest {
    /** Path param: Identifier. */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The direction of ordering (ASC or DESC). Defaults to 'ASC'. */
    direction?: string;
    /** Query param: The field to order by. Defaults to 'prefix'. */
    order?: string;
}
export declare const ListAdvancedTcpProtectionAllowlistsRequest: Schema.Schema<ListAdvancedTcpProtectionAllowlistsRequest>;
export interface ListAdvancedTcpProtectionAllowlistsResponse {
    result: {
        id: string;
        comment: string;
        createdOn: string;
        enabled: boolean;
        modifiedOn: string;
        prefix: string;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListAdvancedTcpProtectionAllowlistsResponse: Schema.Schema<ListAdvancedTcpProtectionAllowlistsResponse>;
export type ListAdvancedTcpProtectionAllowlistsError = DefaultErrors;
export declare const listAdvancedTcpProtectionAllowlists: API.PaginatedOperationMethod<ListAdvancedTcpProtectionAllowlistsRequest, ListAdvancedTcpProtectionAllowlistsResponse, ListAdvancedTcpProtectionAllowlistsError, Credentials | HttpClient.HttpClient>;
export interface CreateAdvancedTcpProtectionAllowlistRequest {
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: An comment describing the allowlist prefix. */
    comment: string;
    /** Body param: Whether to enable the allowlist prefix into effect. */
    enabled: boolean;
    /** Body param: The allowlist prefix to add in CIDR format. */
    prefix: string;
}
export declare const CreateAdvancedTcpProtectionAllowlistRequest: Schema.Schema<CreateAdvancedTcpProtectionAllowlistRequest>;
export interface CreateAdvancedTcpProtectionAllowlistResponse {
    /** The unique ID of the allowlist prefix. */
    id: string;
    /** An optional comment describing the allowlist prefix. */
    comment: string;
    /** The creation timestamp of the allowlist prefix. */
    createdOn: string;
    /** Whether to enable the allowlist prefix into effect. Defaults to false. */
    enabled: boolean;
    /** The last modification timestamp of the allowlist prefix. */
    modifiedOn: string;
    /** The allowlist prefix in CIDR format. */
    prefix: string;
}
export declare const CreateAdvancedTcpProtectionAllowlistResponse: Schema.Schema<CreateAdvancedTcpProtectionAllowlistResponse>;
export type CreateAdvancedTcpProtectionAllowlistError = DefaultErrors;
export declare const createAdvancedTcpProtectionAllowlist: API.OperationMethod<CreateAdvancedTcpProtectionAllowlistRequest, CreateAdvancedTcpProtectionAllowlistResponse, CreateAdvancedTcpProtectionAllowlistError, Credentials | HttpClient.HttpClient>;
export interface BulkDeleteAdvancedTcpProtectionAllowlistsRequest {
    /** Identifier. */
    accountId: string;
}
export declare const BulkDeleteAdvancedTcpProtectionAllowlistsRequest: Schema.Schema<BulkDeleteAdvancedTcpProtectionAllowlistsRequest>;
export interface BulkDeleteAdvancedTcpProtectionAllowlistsResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const BulkDeleteAdvancedTcpProtectionAllowlistsResponse: Schema.Schema<BulkDeleteAdvancedTcpProtectionAllowlistsResponse>;
export type BulkDeleteAdvancedTcpProtectionAllowlistsError = DefaultErrors;
export declare const bulkDeleteAdvancedTcpProtectionAllowlists: API.OperationMethod<BulkDeleteAdvancedTcpProtectionAllowlistsRequest, BulkDeleteAdvancedTcpProtectionAllowlistsResponse, BulkDeleteAdvancedTcpProtectionAllowlistsError, Credentials | HttpClient.HttpClient>;
export interface GetAdvancedTcpProtectionAllowlistItemRequest {
    prefixId: string;
    /** Identifier. */
    accountId: string;
}
export declare const GetAdvancedTcpProtectionAllowlistItemRequest: Schema.Schema<GetAdvancedTcpProtectionAllowlistItemRequest>;
export interface GetAdvancedTcpProtectionAllowlistItemResponse {
    /** The unique ID of the allowlist prefix. */
    id: string;
    /** An optional comment describing the allowlist prefix. */
    comment: string;
    /** The creation timestamp of the allowlist prefix. */
    createdOn: string;
    /** Whether to enable the allowlist prefix into effect. Defaults to false. */
    enabled: boolean;
    /** The last modification timestamp of the allowlist prefix. */
    modifiedOn: string;
    /** The allowlist prefix in CIDR format. */
    prefix: string;
}
export declare const GetAdvancedTcpProtectionAllowlistItemResponse: Schema.Schema<GetAdvancedTcpProtectionAllowlistItemResponse>;
export type GetAdvancedTcpProtectionAllowlistItemError = DefaultErrors;
export declare const getAdvancedTcpProtectionAllowlistItem: API.OperationMethod<GetAdvancedTcpProtectionAllowlistItemRequest, GetAdvancedTcpProtectionAllowlistItemResponse, GetAdvancedTcpProtectionAllowlistItemError, Credentials | HttpClient.HttpClient>;
export interface PatchAdvancedTcpProtectionAllowlistItemRequest {
    prefixId: string;
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: A comment describing the allowlist prefix. Optional. */
    comment?: string;
    /** Body param: Whether to enable the allowlist prefix into effect. Optional. */
    enabled?: boolean;
}
export declare const PatchAdvancedTcpProtectionAllowlistItemRequest: Schema.Schema<PatchAdvancedTcpProtectionAllowlistItemRequest>;
export interface PatchAdvancedTcpProtectionAllowlistItemResponse {
    /** The unique ID of the allowlist prefix. */
    id: string;
    /** An optional comment describing the allowlist prefix. */
    comment: string;
    /** The creation timestamp of the allowlist prefix. */
    createdOn: string;
    /** Whether to enable the allowlist prefix into effect. Defaults to false. */
    enabled: boolean;
    /** The last modification timestamp of the allowlist prefix. */
    modifiedOn: string;
    /** The allowlist prefix in CIDR format. */
    prefix: string;
}
export declare const PatchAdvancedTcpProtectionAllowlistItemResponse: Schema.Schema<PatchAdvancedTcpProtectionAllowlistItemResponse>;
export type PatchAdvancedTcpProtectionAllowlistItemError = DefaultErrors;
export declare const patchAdvancedTcpProtectionAllowlistItem: API.OperationMethod<PatchAdvancedTcpProtectionAllowlistItemRequest, PatchAdvancedTcpProtectionAllowlistItemResponse, PatchAdvancedTcpProtectionAllowlistItemError, Credentials | HttpClient.HttpClient>;
export interface DeleteAdvancedTcpProtectionAllowlistItemRequest {
    prefixId: string;
    /** Identifier. */
    accountId: string;
}
export declare const DeleteAdvancedTcpProtectionAllowlistItemRequest: Schema.Schema<DeleteAdvancedTcpProtectionAllowlistItemRequest>;
export interface DeleteAdvancedTcpProtectionAllowlistItemResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const DeleteAdvancedTcpProtectionAllowlistItemResponse: Schema.Schema<DeleteAdvancedTcpProtectionAllowlistItemResponse>;
export type DeleteAdvancedTcpProtectionAllowlistItemError = DefaultErrors;
export declare const deleteAdvancedTcpProtectionAllowlistItem: API.OperationMethod<DeleteAdvancedTcpProtectionAllowlistItemRequest, DeleteAdvancedTcpProtectionAllowlistItemResponse, DeleteAdvancedTcpProtectionAllowlistItemError, Credentials | HttpClient.HttpClient>;
export interface ListAdvancedTcpProtectionPrefixesRequest {
    /** Path param: Identifier. */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The direction of ordering (ASC or DESC). Defaults to 'ASC'. */
    direction?: string;
    /** Query param: The field to order by. Defaults to 'prefix'. */
    order?: string;
}
export declare const ListAdvancedTcpProtectionPrefixesRequest: Schema.Schema<ListAdvancedTcpProtectionPrefixesRequest>;
export interface ListAdvancedTcpProtectionPrefixesResponse {
    result: {
        id: string;
        comment: string;
        createdOn: string;
        excluded: boolean;
        modifiedOn: string;
        prefix: string;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListAdvancedTcpProtectionPrefixesResponse: Schema.Schema<ListAdvancedTcpProtectionPrefixesResponse>;
export type ListAdvancedTcpProtectionPrefixesError = DefaultErrors;
export declare const listAdvancedTcpProtectionPrefixes: API.PaginatedOperationMethod<ListAdvancedTcpProtectionPrefixesRequest, ListAdvancedTcpProtectionPrefixesResponse, ListAdvancedTcpProtectionPrefixesError, Credentials | HttpClient.HttpClient>;
export interface CreateAdvancedTcpProtectionPrefixRequest {
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: A comment describing the prefix. */
    comment: string;
    /** Body param: Whether to exclude the prefix from protection. */
    excluded: boolean;
    /** Body param: The prefix to add in CIDR format. */
    prefix: string;
}
export declare const CreateAdvancedTcpProtectionPrefixRequest: Schema.Schema<CreateAdvancedTcpProtectionPrefixRequest>;
export interface CreateAdvancedTcpProtectionPrefixResponse {
    /** The unique ID of the prefix. */
    id: string;
    /** A comment describing the prefix. */
    comment: string;
    /** The creation timestamp of the prefix. */
    createdOn: string;
    /** Whether to exclude the prefix from protection. */
    excluded: boolean;
    /** The last modification timestamp of the prefix. */
    modifiedOn: string;
    /** The prefix in CIDR format. */
    prefix: string;
}
export declare const CreateAdvancedTcpProtectionPrefixResponse: Schema.Schema<CreateAdvancedTcpProtectionPrefixResponse>;
export type CreateAdvancedTcpProtectionPrefixError = DefaultErrors;
export declare const createAdvancedTcpProtectionPrefix: API.OperationMethod<CreateAdvancedTcpProtectionPrefixRequest, CreateAdvancedTcpProtectionPrefixResponse, CreateAdvancedTcpProtectionPrefixError, Credentials | HttpClient.HttpClient>;
export interface BulkCreateAdvancedTcpProtectionPrefixesRequest {
    /** Path param: Identifier. */
    accountId: string;
    /** Body param */
    body: {
        comment: string;
        excluded: boolean;
        prefix: string;
    }[];
}
export declare const BulkCreateAdvancedTcpProtectionPrefixesRequest: Schema.Schema<BulkCreateAdvancedTcpProtectionPrefixesRequest>;
export interface BulkCreateAdvancedTcpProtectionPrefixesResponse {
    result: {
        id: string;
        comment: string;
        createdOn: string;
        excluded: boolean;
        modifiedOn: string;
        prefix: string;
    }[];
}
export declare const BulkCreateAdvancedTcpProtectionPrefixesResponse: Schema.Schema<BulkCreateAdvancedTcpProtectionPrefixesResponse>;
export type BulkCreateAdvancedTcpProtectionPrefixesError = DefaultErrors;
export declare const bulkCreateAdvancedTcpProtectionPrefixes: API.PaginatedOperationMethod<BulkCreateAdvancedTcpProtectionPrefixesRequest, BulkCreateAdvancedTcpProtectionPrefixesResponse, BulkCreateAdvancedTcpProtectionPrefixesError, Credentials | HttpClient.HttpClient>;
export interface BulkDeleteAdvancedTcpProtectionPrefixesRequest {
    /** Identifier. */
    accountId: string;
}
export declare const BulkDeleteAdvancedTcpProtectionPrefixesRequest: Schema.Schema<BulkDeleteAdvancedTcpProtectionPrefixesRequest>;
export interface BulkDeleteAdvancedTcpProtectionPrefixesResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const BulkDeleteAdvancedTcpProtectionPrefixesResponse: Schema.Schema<BulkDeleteAdvancedTcpProtectionPrefixesResponse>;
export type BulkDeleteAdvancedTcpProtectionPrefixesError = DefaultErrors;
export declare const bulkDeleteAdvancedTcpProtectionPrefixes: API.OperationMethod<BulkDeleteAdvancedTcpProtectionPrefixesRequest, BulkDeleteAdvancedTcpProtectionPrefixesResponse, BulkDeleteAdvancedTcpProtectionPrefixesError, Credentials | HttpClient.HttpClient>;
export interface GetAdvancedTcpProtectionPrefixItemRequest {
    prefixId: string;
    /** Identifier. */
    accountId: string;
}
export declare const GetAdvancedTcpProtectionPrefixItemRequest: Schema.Schema<GetAdvancedTcpProtectionPrefixItemRequest>;
export interface GetAdvancedTcpProtectionPrefixItemResponse {
    /** The unique ID of the prefix. */
    id: string;
    /** A comment describing the prefix. */
    comment: string;
    /** The creation timestamp of the prefix. */
    createdOn: string;
    /** Whether to exclude the prefix from protection. */
    excluded: boolean;
    /** The last modification timestamp of the prefix. */
    modifiedOn: string;
    /** The prefix in CIDR format. */
    prefix: string;
}
export declare const GetAdvancedTcpProtectionPrefixItemResponse: Schema.Schema<GetAdvancedTcpProtectionPrefixItemResponse>;
export type GetAdvancedTcpProtectionPrefixItemError = DefaultErrors;
export declare const getAdvancedTcpProtectionPrefixItem: API.OperationMethod<GetAdvancedTcpProtectionPrefixItemRequest, GetAdvancedTcpProtectionPrefixItemResponse, GetAdvancedTcpProtectionPrefixItemError, Credentials | HttpClient.HttpClient>;
export interface PatchAdvancedTcpProtectionPrefixItemRequest {
    prefixId: string;
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: A new comment for the prefix. Optional. */
    comment?: string;
    /** Body param: Whether to exclude the prefix from protection. Optional. */
    excluded?: boolean;
}
export declare const PatchAdvancedTcpProtectionPrefixItemRequest: Schema.Schema<PatchAdvancedTcpProtectionPrefixItemRequest>;
export interface PatchAdvancedTcpProtectionPrefixItemResponse {
    /** The unique ID of the prefix. */
    id: string;
    /** A comment describing the prefix. */
    comment: string;
    /** The creation timestamp of the prefix. */
    createdOn: string;
    /** Whether to exclude the prefix from protection. */
    excluded: boolean;
    /** The last modification timestamp of the prefix. */
    modifiedOn: string;
    /** The prefix in CIDR format. */
    prefix: string;
}
export declare const PatchAdvancedTcpProtectionPrefixItemResponse: Schema.Schema<PatchAdvancedTcpProtectionPrefixItemResponse>;
export type PatchAdvancedTcpProtectionPrefixItemError = DefaultErrors;
export declare const patchAdvancedTcpProtectionPrefixItem: API.OperationMethod<PatchAdvancedTcpProtectionPrefixItemRequest, PatchAdvancedTcpProtectionPrefixItemResponse, PatchAdvancedTcpProtectionPrefixItemError, Credentials | HttpClient.HttpClient>;
export interface DeleteAdvancedTcpProtectionPrefixItemRequest {
    prefixId: string;
    /** Identifier. */
    accountId: string;
}
export declare const DeleteAdvancedTcpProtectionPrefixItemRequest: Schema.Schema<DeleteAdvancedTcpProtectionPrefixItemRequest>;
export interface DeleteAdvancedTcpProtectionPrefixItemResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const DeleteAdvancedTcpProtectionPrefixItemResponse: Schema.Schema<DeleteAdvancedTcpProtectionPrefixItemResponse>;
export type DeleteAdvancedTcpProtectionPrefixItemError = DefaultErrors;
export declare const deleteAdvancedTcpProtectionPrefixItem: API.OperationMethod<DeleteAdvancedTcpProtectionPrefixItemRequest, DeleteAdvancedTcpProtectionPrefixItemResponse, DeleteAdvancedTcpProtectionPrefixItemError, Credentials | HttpClient.HttpClient>;
export interface GetAdvancedTcpProtectionStatusRequest {
    /** Identifier. */
    accountId: string;
}
export declare const GetAdvancedTcpProtectionStatusRequest: Schema.Schema<GetAdvancedTcpProtectionStatusRequest>;
export interface GetAdvancedTcpProtectionStatusResponse {
    enabled: boolean;
}
export declare const GetAdvancedTcpProtectionStatusResponse: Schema.Schema<GetAdvancedTcpProtectionStatusResponse>;
export type GetAdvancedTcpProtectionStatusError = DefaultErrors;
export declare const getAdvancedTcpProtectionStatus: API.OperationMethod<GetAdvancedTcpProtectionStatusRequest, GetAdvancedTcpProtectionStatusResponse, GetAdvancedTcpProtectionStatusError, Credentials | HttpClient.HttpClient>;
export interface PatchAdvancedTcpProtectionStatusRequest {
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: Enables or disables protection. */
    enabled: boolean;
}
export declare const PatchAdvancedTcpProtectionStatusRequest: Schema.Schema<PatchAdvancedTcpProtectionStatusRequest>;
export interface PatchAdvancedTcpProtectionStatusResponse {
    enabled: boolean;
}
export declare const PatchAdvancedTcpProtectionStatusResponse: Schema.Schema<PatchAdvancedTcpProtectionStatusResponse>;
export type PatchAdvancedTcpProtectionStatusError = DefaultErrors;
export declare const patchAdvancedTcpProtectionStatus: API.OperationMethod<PatchAdvancedTcpProtectionStatusRequest, PatchAdvancedTcpProtectionStatusResponse, PatchAdvancedTcpProtectionStatusError, Credentials | HttpClient.HttpClient>;
export interface ListAdvancedTcpProtectionSynProtectionFiltersRequest {
    /** Path param: Identifier. */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The direction of ordering (ASC or DESC). Defaults to 'ASC'. */
    direction?: string;
    /** Query param: The mode of the filters to get. Optional. Valid values: 'enabled', 'disabled', 'monitoring'. */
    mode?: string;
    /** Query param: The field to order by. Defaults to 'prefix'. */
    order?: string;
}
export declare const ListAdvancedTcpProtectionSynProtectionFiltersRequest: Schema.Schema<ListAdvancedTcpProtectionSynProtectionFiltersRequest>;
export interface ListAdvancedTcpProtectionSynProtectionFiltersResponse {
    result: {
        id: string;
        createdOn: string;
        expression: string;
        mode: string;
        modifiedOn: string;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListAdvancedTcpProtectionSynProtectionFiltersResponse: Schema.Schema<ListAdvancedTcpProtectionSynProtectionFiltersResponse>;
export type ListAdvancedTcpProtectionSynProtectionFiltersError = DefaultErrors;
export declare const listAdvancedTcpProtectionSynProtectionFilters: API.PaginatedOperationMethod<ListAdvancedTcpProtectionSynProtectionFiltersRequest, ListAdvancedTcpProtectionSynProtectionFiltersResponse, ListAdvancedTcpProtectionSynProtectionFiltersError, Credentials | HttpClient.HttpClient>;
export interface CreateAdvancedTcpProtectionSynProtectionFilterRequest {
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: The filter expression. */
    expression: string;
    /** Body param: The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
}
export declare const CreateAdvancedTcpProtectionSynProtectionFilterRequest: Schema.Schema<CreateAdvancedTcpProtectionSynProtectionFilterRequest>;
export interface CreateAdvancedTcpProtectionSynProtectionFilterResponse {
    /** The unique ID of the expression filter. */
    id: string;
    /** The creation timestamp of the expression filter. */
    createdOn: string;
    /** The filter expression. */
    expression: string;
    /** The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the expression filter. */
    modifiedOn: string;
}
export declare const CreateAdvancedTcpProtectionSynProtectionFilterResponse: Schema.Schema<CreateAdvancedTcpProtectionSynProtectionFilterResponse>;
export type CreateAdvancedTcpProtectionSynProtectionFilterError = DefaultErrors;
export declare const createAdvancedTcpProtectionSynProtectionFilter: API.OperationMethod<CreateAdvancedTcpProtectionSynProtectionFilterRequest, CreateAdvancedTcpProtectionSynProtectionFilterResponse, CreateAdvancedTcpProtectionSynProtectionFilterError, Credentials | HttpClient.HttpClient>;
export interface BulkDeleteAdvancedTcpProtectionSynProtectionFiltersRequest {
    /** Identifier. */
    accountId: string;
}
export declare const BulkDeleteAdvancedTcpProtectionSynProtectionFiltersRequest: Schema.Schema<BulkDeleteAdvancedTcpProtectionSynProtectionFiltersRequest>;
export interface BulkDeleteAdvancedTcpProtectionSynProtectionFiltersResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const BulkDeleteAdvancedTcpProtectionSynProtectionFiltersResponse: Schema.Schema<BulkDeleteAdvancedTcpProtectionSynProtectionFiltersResponse>;
export type BulkDeleteAdvancedTcpProtectionSynProtectionFiltersError = DefaultErrors;
export declare const bulkDeleteAdvancedTcpProtectionSynProtectionFilters: API.OperationMethod<BulkDeleteAdvancedTcpProtectionSynProtectionFiltersRequest, BulkDeleteAdvancedTcpProtectionSynProtectionFiltersResponse, BulkDeleteAdvancedTcpProtectionSynProtectionFiltersError, Credentials | HttpClient.HttpClient>;
export interface GetAdvancedTcpProtectionSynProtectionFilterItemRequest {
    filterId: string;
    /** Identifier. */
    accountId: string;
}
export declare const GetAdvancedTcpProtectionSynProtectionFilterItemRequest: Schema.Schema<GetAdvancedTcpProtectionSynProtectionFilterItemRequest>;
export interface GetAdvancedTcpProtectionSynProtectionFilterItemResponse {
    /** The unique ID of the expression filter. */
    id: string;
    /** The creation timestamp of the expression filter. */
    createdOn: string;
    /** The filter expression. */
    expression: string;
    /** The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the expression filter. */
    modifiedOn: string;
}
export declare const GetAdvancedTcpProtectionSynProtectionFilterItemResponse: Schema.Schema<GetAdvancedTcpProtectionSynProtectionFilterItemResponse>;
export type GetAdvancedTcpProtectionSynProtectionFilterItemError = DefaultErrors;
export declare const getAdvancedTcpProtectionSynProtectionFilterItem: API.OperationMethod<GetAdvancedTcpProtectionSynProtectionFilterItemRequest, GetAdvancedTcpProtectionSynProtectionFilterItemResponse, GetAdvancedTcpProtectionSynProtectionFilterItemError, Credentials | HttpClient.HttpClient>;
export interface PatchAdvancedTcpProtectionSynProtectionFilterItemRequest {
    filterId: string;
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: The new filter expression. Optional. */
    expression?: string;
    /** Body param: The new mode for the filter. Optional. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode?: string;
}
export declare const PatchAdvancedTcpProtectionSynProtectionFilterItemRequest: Schema.Schema<PatchAdvancedTcpProtectionSynProtectionFilterItemRequest>;
export interface PatchAdvancedTcpProtectionSynProtectionFilterItemResponse {
    /** The unique ID of the expression filter. */
    id: string;
    /** The creation timestamp of the expression filter. */
    createdOn: string;
    /** The filter expression. */
    expression: string;
    /** The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the expression filter. */
    modifiedOn: string;
}
export declare const PatchAdvancedTcpProtectionSynProtectionFilterItemResponse: Schema.Schema<PatchAdvancedTcpProtectionSynProtectionFilterItemResponse>;
export type PatchAdvancedTcpProtectionSynProtectionFilterItemError = DefaultErrors;
export declare const patchAdvancedTcpProtectionSynProtectionFilterItem: API.OperationMethod<PatchAdvancedTcpProtectionSynProtectionFilterItemRequest, PatchAdvancedTcpProtectionSynProtectionFilterItemResponse, PatchAdvancedTcpProtectionSynProtectionFilterItemError, Credentials | HttpClient.HttpClient>;
export interface DeleteAdvancedTcpProtectionSynProtectionFilterItemRequest {
    filterId: string;
    /** Identifier. */
    accountId: string;
}
export declare const DeleteAdvancedTcpProtectionSynProtectionFilterItemRequest: Schema.Schema<DeleteAdvancedTcpProtectionSynProtectionFilterItemRequest>;
export interface DeleteAdvancedTcpProtectionSynProtectionFilterItemResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const DeleteAdvancedTcpProtectionSynProtectionFilterItemResponse: Schema.Schema<DeleteAdvancedTcpProtectionSynProtectionFilterItemResponse>;
export type DeleteAdvancedTcpProtectionSynProtectionFilterItemError = DefaultErrors;
export declare const deleteAdvancedTcpProtectionSynProtectionFilterItem: API.OperationMethod<DeleteAdvancedTcpProtectionSynProtectionFilterItemRequest, DeleteAdvancedTcpProtectionSynProtectionFilterItemResponse, DeleteAdvancedTcpProtectionSynProtectionFilterItemError, Credentials | HttpClient.HttpClient>;
export interface ListAdvancedTcpProtectionSynProtectionRulesRequest {
    /** Path param: Identifier. */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The direction of ordering (ASC or DESC). Defaults to 'ASC'. */
    direction?: string;
    /** Query param: The field to order by. Defaults to 'prefix'. */
    order?: string;
}
export declare const ListAdvancedTcpProtectionSynProtectionRulesRequest: Schema.Schema<ListAdvancedTcpProtectionSynProtectionRulesRequest>;
export interface ListAdvancedTcpProtectionSynProtectionRulesResponse {
    result: {
        id: string;
        burstSensitivity: string;
        createdOn: string;
        mitigationType: string;
        mode: string;
        modifiedOn: string;
        name: string;
        rateSensitivity: string;
        scope: string;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListAdvancedTcpProtectionSynProtectionRulesResponse: Schema.Schema<ListAdvancedTcpProtectionSynProtectionRulesResponse>;
export type ListAdvancedTcpProtectionSynProtectionRulesError = DefaultErrors;
export declare const listAdvancedTcpProtectionSynProtectionRules: API.PaginatedOperationMethod<ListAdvancedTcpProtectionSynProtectionRulesRequest, ListAdvancedTcpProtectionSynProtectionRulesResponse, ListAdvancedTcpProtectionSynProtectionRulesError, Credentials | HttpClient.HttpClient>;
export interface CreateAdvancedTcpProtectionSynProtectionRuleRequest {
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: The burst sensitivity. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity: string;
    /** Body param: The mode for SYN Protection. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** Body param: The name of the SYN Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be th */
    name: string;
    /** Body param: The rate sensitivity. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity: string;
    /** Body param: The scope for the SYN Protection rule. Must be one of 'global', 'region', or 'datacenter'. */
    scope: string;
    /** Body param: The type of mitigation. Must be one of 'challenge' or 'retransmit'. Optional. Defaults to 'challenge'. */
    mitigationType?: string;
}
export declare const CreateAdvancedTcpProtectionSynProtectionRuleRequest: Schema.Schema<CreateAdvancedTcpProtectionSynProtectionRuleRequest>;
export interface CreateAdvancedTcpProtectionSynProtectionRuleResponse {
    /** The unique ID of the SYN Protection rule. */
    id: string;
    /** The burst sensitivity. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity: string;
    /** The creation timestamp of the SYN Protection rule. */
    createdOn: string;
    /** The type of mitigation for SYN Protection. Must be one of 'challenge' or 'retransmit'. */
    mitigationType: string;
    /** The mode for SYN Protection. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the SYN Protection rule. */
    modifiedOn: string;
    /** The name of the SYN Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be the actual nam */
    name: string;
    /** The rate sensitivity. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity: string;
    /** The scope for the SYN Protection rule. Must be one of 'global', 'region', or 'datacenter'. */
    scope: string;
}
export declare const CreateAdvancedTcpProtectionSynProtectionRuleResponse: Schema.Schema<CreateAdvancedTcpProtectionSynProtectionRuleResponse>;
export type CreateAdvancedTcpProtectionSynProtectionRuleError = DefaultErrors;
export declare const createAdvancedTcpProtectionSynProtectionRule: API.OperationMethod<CreateAdvancedTcpProtectionSynProtectionRuleRequest, CreateAdvancedTcpProtectionSynProtectionRuleResponse, CreateAdvancedTcpProtectionSynProtectionRuleError, Credentials | HttpClient.HttpClient>;
export interface BulkDeleteAdvancedTcpProtectionSynProtectionRulesRequest {
    /** Identifier. */
    accountId: string;
}
export declare const BulkDeleteAdvancedTcpProtectionSynProtectionRulesRequest: Schema.Schema<BulkDeleteAdvancedTcpProtectionSynProtectionRulesRequest>;
export interface BulkDeleteAdvancedTcpProtectionSynProtectionRulesResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const BulkDeleteAdvancedTcpProtectionSynProtectionRulesResponse: Schema.Schema<BulkDeleteAdvancedTcpProtectionSynProtectionRulesResponse>;
export type BulkDeleteAdvancedTcpProtectionSynProtectionRulesError = DefaultErrors;
export declare const bulkDeleteAdvancedTcpProtectionSynProtectionRules: API.OperationMethod<BulkDeleteAdvancedTcpProtectionSynProtectionRulesRequest, BulkDeleteAdvancedTcpProtectionSynProtectionRulesResponse, BulkDeleteAdvancedTcpProtectionSynProtectionRulesError, Credentials | HttpClient.HttpClient>;
export interface GetAdvancedTcpProtectionSynProtectionRuleItemRequest {
    ruleId: string;
    /** Identifier. */
    accountId: string;
}
export declare const GetAdvancedTcpProtectionSynProtectionRuleItemRequest: Schema.Schema<GetAdvancedTcpProtectionSynProtectionRuleItemRequest>;
export interface GetAdvancedTcpProtectionSynProtectionRuleItemResponse {
    /** The unique ID of the SYN Protection rule. */
    id: string;
    /** The burst sensitivity. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity: string;
    /** The creation timestamp of the SYN Protection rule. */
    createdOn: string;
    /** The type of mitigation for SYN Protection. Must be one of 'challenge' or 'retransmit'. */
    mitigationType: string;
    /** The mode for SYN Protection. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the SYN Protection rule. */
    modifiedOn: string;
    /** The name of the SYN Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be the actual nam */
    name: string;
    /** The rate sensitivity. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity: string;
    /** The scope for the SYN Protection rule. Must be one of 'global', 'region', or 'datacenter'. */
    scope: string;
}
export declare const GetAdvancedTcpProtectionSynProtectionRuleItemResponse: Schema.Schema<GetAdvancedTcpProtectionSynProtectionRuleItemResponse>;
export type GetAdvancedTcpProtectionSynProtectionRuleItemError = DefaultErrors;
export declare const getAdvancedTcpProtectionSynProtectionRuleItem: API.OperationMethod<GetAdvancedTcpProtectionSynProtectionRuleItemRequest, GetAdvancedTcpProtectionSynProtectionRuleItemResponse, GetAdvancedTcpProtectionSynProtectionRuleItemError, Credentials | HttpClient.HttpClient>;
export interface PatchAdvancedTcpProtectionSynProtectionRuleItemRequest {
    ruleId: string;
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: The new burst sensitivity. Optional. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity?: string;
    /** Body param: The new mitigation type. Optional. Must be one of 'challenge' or 'retransmit'. */
    mitigationType?: string;
    /** Body param: The new mode for SYN Protection. Optional. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode?: string;
    /** Body param: The new rate sensitivity. Optional. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity?: string;
}
export declare const PatchAdvancedTcpProtectionSynProtectionRuleItemRequest: Schema.Schema<PatchAdvancedTcpProtectionSynProtectionRuleItemRequest>;
export interface PatchAdvancedTcpProtectionSynProtectionRuleItemResponse {
    /** The unique ID of the SYN Protection rule. */
    id: string;
    /** The burst sensitivity. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity: string;
    /** The creation timestamp of the SYN Protection rule. */
    createdOn: string;
    /** The type of mitigation for SYN Protection. Must be one of 'challenge' or 'retransmit'. */
    mitigationType: string;
    /** The mode for SYN Protection. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the SYN Protection rule. */
    modifiedOn: string;
    /** The name of the SYN Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be the actual nam */
    name: string;
    /** The rate sensitivity. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity: string;
    /** The scope for the SYN Protection rule. Must be one of 'global', 'region', or 'datacenter'. */
    scope: string;
}
export declare const PatchAdvancedTcpProtectionSynProtectionRuleItemResponse: Schema.Schema<PatchAdvancedTcpProtectionSynProtectionRuleItemResponse>;
export type PatchAdvancedTcpProtectionSynProtectionRuleItemError = DefaultErrors;
export declare const patchAdvancedTcpProtectionSynProtectionRuleItem: API.OperationMethod<PatchAdvancedTcpProtectionSynProtectionRuleItemRequest, PatchAdvancedTcpProtectionSynProtectionRuleItemResponse, PatchAdvancedTcpProtectionSynProtectionRuleItemError, Credentials | HttpClient.HttpClient>;
export interface DeleteAdvancedTcpProtectionSynProtectionRuleItemRequest {
    ruleId: string;
    /** Identifier. */
    accountId: string;
}
export declare const DeleteAdvancedTcpProtectionSynProtectionRuleItemRequest: Schema.Schema<DeleteAdvancedTcpProtectionSynProtectionRuleItemRequest>;
export interface DeleteAdvancedTcpProtectionSynProtectionRuleItemResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const DeleteAdvancedTcpProtectionSynProtectionRuleItemResponse: Schema.Schema<DeleteAdvancedTcpProtectionSynProtectionRuleItemResponse>;
export type DeleteAdvancedTcpProtectionSynProtectionRuleItemError = DefaultErrors;
export declare const deleteAdvancedTcpProtectionSynProtectionRuleItem: API.OperationMethod<DeleteAdvancedTcpProtectionSynProtectionRuleItemRequest, DeleteAdvancedTcpProtectionSynProtectionRuleItemResponse, DeleteAdvancedTcpProtectionSynProtectionRuleItemError, Credentials | HttpClient.HttpClient>;
export interface ListAdvancedTcpProtectionTcpFlowProtectionFiltersRequest {
    /** Path param: Identifier. */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The direction of ordering (ASC or DESC). Defaults to 'ASC'. */
    direction?: string;
    /** Query param: The mode of the filters to get. Optional. Valid values: 'enabled', 'disabled', 'monitoring'. */
    mode?: string;
    /** Query param: The field to order by. Defaults to 'prefix'. */
    order?: string;
}
export declare const ListAdvancedTcpProtectionTcpFlowProtectionFiltersRequest: Schema.Schema<ListAdvancedTcpProtectionTcpFlowProtectionFiltersRequest>;
export interface ListAdvancedTcpProtectionTcpFlowProtectionFiltersResponse {
    result: {
        id: string;
        createdOn: string;
        expression: string;
        mode: string;
        modifiedOn: string;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListAdvancedTcpProtectionTcpFlowProtectionFiltersResponse: Schema.Schema<ListAdvancedTcpProtectionTcpFlowProtectionFiltersResponse>;
export type ListAdvancedTcpProtectionTcpFlowProtectionFiltersError = DefaultErrors;
export declare const listAdvancedTcpProtectionTcpFlowProtectionFilters: API.PaginatedOperationMethod<ListAdvancedTcpProtectionTcpFlowProtectionFiltersRequest, ListAdvancedTcpProtectionTcpFlowProtectionFiltersResponse, ListAdvancedTcpProtectionTcpFlowProtectionFiltersError, Credentials | HttpClient.HttpClient>;
export interface CreateAdvancedTcpProtectionTcpFlowProtectionFilterRequest {
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: The filter expression. */
    expression: string;
    /** Body param: The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
}
export declare const CreateAdvancedTcpProtectionTcpFlowProtectionFilterRequest: Schema.Schema<CreateAdvancedTcpProtectionTcpFlowProtectionFilterRequest>;
export interface CreateAdvancedTcpProtectionTcpFlowProtectionFilterResponse {
    /** The unique ID of the expression filter. */
    id: string;
    /** The creation timestamp of the expression filter. */
    createdOn: string;
    /** The filter expression. */
    expression: string;
    /** The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the expression filter. */
    modifiedOn: string;
}
export declare const CreateAdvancedTcpProtectionTcpFlowProtectionFilterResponse: Schema.Schema<CreateAdvancedTcpProtectionTcpFlowProtectionFilterResponse>;
export type CreateAdvancedTcpProtectionTcpFlowProtectionFilterError = DefaultErrors;
export declare const createAdvancedTcpProtectionTcpFlowProtectionFilter: API.OperationMethod<CreateAdvancedTcpProtectionTcpFlowProtectionFilterRequest, CreateAdvancedTcpProtectionTcpFlowProtectionFilterResponse, CreateAdvancedTcpProtectionTcpFlowProtectionFilterError, Credentials | HttpClient.HttpClient>;
export interface BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersRequest {
    /** Identifier. */
    accountId: string;
}
export declare const BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersRequest: Schema.Schema<BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersRequest>;
export interface BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersResponse: Schema.Schema<BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersResponse>;
export type BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersError = DefaultErrors;
export declare const bulkDeleteAdvancedTcpProtectionTcpFlowProtectionFilters: API.OperationMethod<BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersRequest, BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersResponse, BulkDeleteAdvancedTcpProtectionTcpFlowProtectionFiltersError, Credentials | HttpClient.HttpClient>;
export interface GetAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest {
    filterId: string;
    /** Identifier. */
    accountId: string;
}
export declare const GetAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest: Schema.Schema<GetAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest>;
export interface GetAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse {
    /** The unique ID of the expression filter. */
    id: string;
    /** The creation timestamp of the expression filter. */
    createdOn: string;
    /** The filter expression. */
    expression: string;
    /** The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the expression filter. */
    modifiedOn: string;
}
export declare const GetAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse: Schema.Schema<GetAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse>;
export type GetAdvancedTcpProtectionTcpFlowProtectionFilterItemError = DefaultErrors;
export declare const getAdvancedTcpProtectionTcpFlowProtectionFilterItem: API.OperationMethod<GetAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest, GetAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse, GetAdvancedTcpProtectionTcpFlowProtectionFilterItemError, Credentials | HttpClient.HttpClient>;
export interface PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest {
    filterId: string;
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: The new filter expression. Optional. */
    expression?: string;
    /** Body param: The new mode for the filter. Optional. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode?: string;
}
export declare const PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest: Schema.Schema<PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest>;
export interface PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse {
    /** The unique ID of the expression filter. */
    id: string;
    /** The creation timestamp of the expression filter. */
    createdOn: string;
    /** The filter expression. */
    expression: string;
    /** The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the expression filter. */
    modifiedOn: string;
}
export declare const PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse: Schema.Schema<PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse>;
export type PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemError = DefaultErrors;
export declare const patchAdvancedTcpProtectionTcpFlowProtectionFilterItem: API.OperationMethod<PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest, PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse, PatchAdvancedTcpProtectionTcpFlowProtectionFilterItemError, Credentials | HttpClient.HttpClient>;
export interface DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest {
    filterId: string;
    /** Identifier. */
    accountId: string;
}
export declare const DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest: Schema.Schema<DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest>;
export interface DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse: Schema.Schema<DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse>;
export type DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemError = DefaultErrors;
export declare const deleteAdvancedTcpProtectionTcpFlowProtectionFilterItem: API.OperationMethod<DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemRequest, DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemResponse, DeleteAdvancedTcpProtectionTcpFlowProtectionFilterItemError, Credentials | HttpClient.HttpClient>;
export interface ListAdvancedTcpProtectionTcpFlowProtectionRulesRequest {
    /** Path param: Identifier. */
    accountId: string;
    page?: number;
    perPage?: number;
    /** Query param: The direction of ordering (ASC or DESC). Defaults to 'ASC'. */
    direction?: string;
    /** Query param: The field to order by. Defaults to 'prefix'. */
    order?: string;
}
export declare const ListAdvancedTcpProtectionTcpFlowProtectionRulesRequest: Schema.Schema<ListAdvancedTcpProtectionTcpFlowProtectionRulesRequest>;
export interface ListAdvancedTcpProtectionTcpFlowProtectionRulesResponse {
    result: {
        id: string;
        burstSensitivity: string;
        createdOn: string;
        mode: string;
        modifiedOn: string;
        name: string;
        rateSensitivity: string;
        scope: string;
    }[];
    resultInfo?: {
        count?: number | null;
        page?: number | null;
        perPage?: number | null;
        totalCount?: number | null;
    } | null;
}
export declare const ListAdvancedTcpProtectionTcpFlowProtectionRulesResponse: Schema.Schema<ListAdvancedTcpProtectionTcpFlowProtectionRulesResponse>;
export type ListAdvancedTcpProtectionTcpFlowProtectionRulesError = DefaultErrors;
export declare const listAdvancedTcpProtectionTcpFlowProtectionRules: API.PaginatedOperationMethod<ListAdvancedTcpProtectionTcpFlowProtectionRulesRequest, ListAdvancedTcpProtectionTcpFlowProtectionRulesResponse, ListAdvancedTcpProtectionTcpFlowProtectionRulesError, Credentials | HttpClient.HttpClient>;
export interface CreateAdvancedTcpProtectionTcpFlowProtectionRuleRequest {
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: The burst sensitivity. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity: string;
    /** Body param: The mode for the TCP Flow Protection. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** Body param: The name of the TCP Flow Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should  */
    name: string;
    /** Body param: The rate sensitivity. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity: string;
    /** Body param: The scope for the TCP Flow Protection rule. */
    scope: string;
}
export declare const CreateAdvancedTcpProtectionTcpFlowProtectionRuleRequest: Schema.Schema<CreateAdvancedTcpProtectionTcpFlowProtectionRuleRequest>;
export interface CreateAdvancedTcpProtectionTcpFlowProtectionRuleResponse {
    /** The unique ID of the TCP Flow Protection rule. */
    id: string;
    /** The burst sensitivity. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity: string;
    /** The creation timestamp of the TCP Flow Protection rule. */
    createdOn: string;
    /** The mode for TCP Flow Protection. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the TCP Flow Protection rule. */
    modifiedOn: string;
    /** The name of the TCP Flow Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be the actua */
    name: string;
    /** The rate sensitivity. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity: string;
    /** The scope for the TCP Flow Protection rule. Must be one of 'global', 'region', or 'datacenter'. */
    scope: string;
}
export declare const CreateAdvancedTcpProtectionTcpFlowProtectionRuleResponse: Schema.Schema<CreateAdvancedTcpProtectionTcpFlowProtectionRuleResponse>;
export type CreateAdvancedTcpProtectionTcpFlowProtectionRuleError = DefaultErrors;
export declare const createAdvancedTcpProtectionTcpFlowProtectionRule: API.OperationMethod<CreateAdvancedTcpProtectionTcpFlowProtectionRuleRequest, CreateAdvancedTcpProtectionTcpFlowProtectionRuleResponse, CreateAdvancedTcpProtectionTcpFlowProtectionRuleError, Credentials | HttpClient.HttpClient>;
export interface BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesRequest {
    /** Identifier. */
    accountId: string;
}
export declare const BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesRequest: Schema.Schema<BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesRequest>;
export interface BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesResponse: Schema.Schema<BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesResponse>;
export type BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesError = DefaultErrors;
export declare const bulkDeleteAdvancedTcpProtectionTcpFlowProtectionRules: API.OperationMethod<BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesRequest, BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesResponse, BulkDeleteAdvancedTcpProtectionTcpFlowProtectionRulesError, Credentials | HttpClient.HttpClient>;
export interface GetAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest {
    ruleId: string;
    /** Identifier. */
    accountId: string;
}
export declare const GetAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest: Schema.Schema<GetAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest>;
export interface GetAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse {
    /** The unique ID of the TCP Flow Protection rule. */
    id: string;
    /** The burst sensitivity. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity: string;
    /** The creation timestamp of the TCP Flow Protection rule. */
    createdOn: string;
    /** The mode for TCP Flow Protection. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the TCP Flow Protection rule. */
    modifiedOn: string;
    /** The name of the TCP Flow Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be the actua */
    name: string;
    /** The rate sensitivity. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity: string;
    /** The scope for the TCP Flow Protection rule. Must be one of 'global', 'region', or 'datacenter'. */
    scope: string;
}
export declare const GetAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse: Schema.Schema<GetAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse>;
export type GetAdvancedTcpProtectionTcpFlowProtectionRuleItemError = DefaultErrors;
export declare const getAdvancedTcpProtectionTcpFlowProtectionRuleItem: API.OperationMethod<GetAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest, GetAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse, GetAdvancedTcpProtectionTcpFlowProtectionRuleItemError, Credentials | HttpClient.HttpClient>;
export interface PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest {
    ruleId: string;
    /** Path param: Identifier. */
    accountId: string;
    /** Body param: The new burst sensitivity. Optional. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity?: string;
    /** Body param: The new mode for TCP Flow Protection. Optional. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode?: string;
    /** Body param: The new rate sensitivity. Optional. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity?: string;
}
export declare const PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest: Schema.Schema<PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest>;
export interface PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse {
    /** The unique ID of the TCP Flow Protection rule. */
    id: string;
    /** The burst sensitivity. Must be one of 'low', 'medium', 'high'. */
    burstSensitivity: string;
    /** The creation timestamp of the TCP Flow Protection rule. */
    createdOn: string;
    /** The mode for TCP Flow Protection. Must be one of 'enabled', 'disabled', 'monitoring'. */
    mode: string;
    /** The last modification timestamp of the TCP Flow Protection rule. */
    modifiedOn: string;
    /** The name of the TCP Flow Protection rule. Value is relative to the 'scope' setting. For 'global' scope, name should be 'global'. For either the 'region' or 'datacenter' scope, name should be the actua */
    name: string;
    /** The rate sensitivity. Must be one of 'low', 'medium', 'high'. */
    rateSensitivity: string;
    /** The scope for the TCP Flow Protection rule. Must be one of 'global', 'region', or 'datacenter'. */
    scope: string;
}
export declare const PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse: Schema.Schema<PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse>;
export type PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemError = DefaultErrors;
export declare const patchAdvancedTcpProtectionTcpFlowProtectionRuleItem: API.OperationMethod<PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest, PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse, PatchAdvancedTcpProtectionTcpFlowProtectionRuleItemError, Credentials | HttpClient.HttpClient>;
export interface DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest {
    ruleId: string;
    /** Identifier. */
    accountId: string;
}
export declare const DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest: Schema.Schema<DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest>;
export interface DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse {
    errors: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    messages: {
        code: number;
        message: string;
        documentationUrl?: string | null;
        source?: {
            pointer?: string | null;
        } | null;
    }[];
    /** Whether the API call was successful. */
    success: true;
}
export declare const DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse: Schema.Schema<DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse>;
export type DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemError = DefaultErrors;
export declare const deleteAdvancedTcpProtectionTcpFlowProtectionRuleItem: API.OperationMethod<DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemRequest, DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemResponse, DeleteAdvancedTcpProtectionTcpFlowProtectionRuleItemError, Credentials | HttpClient.HttpClient>;
//# sourceMappingURL=ddos-protection.d.ts.map