import type * as gax from 'google-gax';
import type { Callback, CallOptions, Descriptors, ClientOptions, PaginationCallback } from 'google-gax';
import { Transform } from 'stream';
import * as protos from '../../protos/protos';
/**
 *  Service to determine the likelihood an event is legitimate.
 * @class
 * @memberof v1
 */
export declare class RecaptchaEnterpriseServiceClient {
    private _terminated;
    private _opts;
    private _providedCustomServicePath;
    private _gaxModule;
    private _gaxGrpc;
    private _protos;
    private _defaults;
    private _universeDomain;
    private _servicePath;
    private _log;
    auth: gax.GoogleAuth;
    descriptors: Descriptors;
    warn: (code: string, message: string, warnType?: string) => void;
    innerApiCalls: {
        [name: string]: Function;
    };
    pathTemplates: {
        [name: string]: gax.PathTemplate;
    };
    recaptchaEnterpriseServiceStub?: Promise<{
        [name: string]: Function;
    }>;
    /**
     * Construct an instance of RecaptchaEnterpriseServiceClient.
     *
     * @param {object} [options] - The configuration object.
     * The options accepted by the constructor are described in detail
     * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance).
     * The common options are:
     * @param {object} [options.credentials] - Credentials object.
     * @param {string} [options.credentials.client_email]
     * @param {string} [options.credentials.private_key]
     * @param {string} [options.email] - Account email address. Required when
     *     using a .pem or .p12 keyFilename.
     * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or
     *     .p12 key downloaded from the Google Developers Console. If you provide
     *     a path to a JSON file, the projectId option below is not necessary.
     *     NOTE: .pem and .p12 require you to specify options.email as well.
     * @param {number} [options.port] - The port on which to connect to
     *     the remote host.
     * @param {string} [options.projectId] - The project ID from the Google
     *     Developer's Console, e.g. 'grape-spaceship-123'. We will also check
     *     the environment variable GCLOUD_PROJECT for your project ID. If your
     *     app is running in an environment which supports
     *     {@link https://cloud.google.com/docs/authentication/application-default-credentials Application Default Credentials},
     *     your project ID will be detected automatically.
     * @param {string} [options.apiEndpoint] - The domain name of the
     *     API remote host.
     * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override.
     *     Follows the structure of {@link gapicConfig}.
     * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode.
     *     For more information, please check the
     *     {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}.
     * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you
     *     need to avoid loading the default gRPC version and want to use the fallback
     *     HTTP implementation. Load only fallback version and pass it to the constructor:
     *     ```
     *     const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC
     *     const client = new RecaptchaEnterpriseServiceClient({fallback: true}, gax);
     *     ```
     */
    constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback);
    /**
     * Initialize the client.
     * Performs asynchronous operations (such as authentication) and prepares the client.
     * This function will be called automatically when any class method is called for the
     * first time, but if you need to initialize it before calling an actual method,
     * feel free to call initialize() directly.
     *
     * You can await on this method if you want to make sure the client is initialized.
     *
     * @returns {Promise} A promise that resolves to an authenticated service stub.
     */
    initialize(): Promise<{
        [name: string]: Function;
    }>;
    /**
     * The DNS address for this API service.
     * @deprecated Use the apiEndpoint method of the client instance.
     * @returns {string} The DNS address for this service.
     */
    static get servicePath(): string;
    /**
     * The DNS address for this API service - same as servicePath.
     * @deprecated Use the apiEndpoint method of the client instance.
     * @returns {string} The DNS address for this service.
     */
    static get apiEndpoint(): string;
    /**
     * The DNS address for this API service.
     * @returns {string} The DNS address for this service.
     */
    get apiEndpoint(): string;
    get universeDomain(): string;
    /**
     * The port for this API service.
     * @returns {number} The default port for this service.
     */
    static get port(): number;
    /**
     * The scopes needed to make gRPC calls for every method defined
     * in this service.
     * @returns {string[]} List of default scopes.
     */
    static get scopes(): string[];
    getProjectId(): Promise<string>;
    getProjectId(callback: Callback<string, undefined, undefined>): void;
    /**
     * Creates an Assessment of the likelihood an event is legitimate.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project in which the assessment is created,
     *   in the format `projects/{project}`.
     * @param {google.cloud.recaptchaenterprise.v1.Assessment} request.assessment
     *   Required. The assessment details.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.Assessment|Assessment}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.create_assessment.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_CreateAssessment_async
     */
    createAssessment(request?: protos.google.cloud.recaptchaenterprise.v1.ICreateAssessmentRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IAssessment,
        protos.google.cloud.recaptchaenterprise.v1.ICreateAssessmentRequest | undefined,
        {} | undefined
    ]>;
    createAssessment(request: protos.google.cloud.recaptchaenterprise.v1.ICreateAssessmentRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IAssessment, protos.google.cloud.recaptchaenterprise.v1.ICreateAssessmentRequest | null | undefined, {} | null | undefined>): void;
    createAssessment(request: protos.google.cloud.recaptchaenterprise.v1.ICreateAssessmentRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IAssessment, protos.google.cloud.recaptchaenterprise.v1.ICreateAssessmentRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Annotates a previously created Assessment to provide additional information
     * on whether the event turned out to be authentic or fraudulent.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.name
     *   Required. The resource name of the Assessment, in the format
     *   `projects/{project}/assessments/{assessment}`.
     * @param {google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest.Annotation} [request.annotation]
     *   Optional. The annotation that is assigned to the Event. This field can be
     *   left empty to provide reasons that apply to an event without concluding
     *   whether the event is legitimate or fraudulent.
     * @param {number[]} [request.reasons]
     *   Optional. Reasons for the annotation that are assigned to the event.
     * @param {string} [request.accountId]
     *   Optional. A stable account identifier to apply to the assessment. This is
     *   an alternative to setting `account_id` in `CreateAssessment`, for example
     *   when a stable account identifier is not yet known in the initial request.
     * @param {Buffer} [request.hashedAccountId]
     *   Optional. A stable hashed account identifier to apply to the assessment.
     *   This is an alternative to setting `hashed_account_id` in
     *   `CreateAssessment`, for example when a stable account identifier is not yet
     *   known in the initial request.
     * @param {google.cloud.recaptchaenterprise.v1.TransactionEvent} [request.transactionEvent]
     *   Optional. If the assessment is part of a payment transaction, provide
     *   details on payment lifecycle events that occur in the transaction.
     * @param {google.cloud.recaptchaenterprise.v1.PhoneAuthenticationEvent} [request.phoneAuthenticationEvent]
     *   Optional. If using an external multi-factor authentication provider,
     *   provide phone authentication details for fraud detection purposes.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentResponse|AnnotateAssessmentResponse}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.annotate_assessment.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_AnnotateAssessment_async
     */
    annotateAssessment(request?: protos.google.cloud.recaptchaenterprise.v1.IAnnotateAssessmentRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IAnnotateAssessmentResponse,
        protos.google.cloud.recaptchaenterprise.v1.IAnnotateAssessmentRequest | undefined,
        {} | undefined
    ]>;
    annotateAssessment(request: protos.google.cloud.recaptchaenterprise.v1.IAnnotateAssessmentRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IAnnotateAssessmentResponse, protos.google.cloud.recaptchaenterprise.v1.IAnnotateAssessmentRequest | null | undefined, {} | null | undefined>): void;
    annotateAssessment(request: protos.google.cloud.recaptchaenterprise.v1.IAnnotateAssessmentRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IAnnotateAssessmentResponse, protos.google.cloud.recaptchaenterprise.v1.IAnnotateAssessmentRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Creates a new reCAPTCHA Enterprise key.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project in which the key is created, in the
     *   format `projects/{project}`.
     * @param {google.cloud.recaptchaenterprise.v1.Key} request.key
     *   Required. Information to create a reCAPTCHA Enterprise key.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.Key|Key}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.create_key.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_CreateKey_async
     */
    createKey(request?: protos.google.cloud.recaptchaenterprise.v1.ICreateKeyRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IKey,
        protos.google.cloud.recaptchaenterprise.v1.ICreateKeyRequest | undefined,
        {} | undefined
    ]>;
    createKey(request: protos.google.cloud.recaptchaenterprise.v1.ICreateKeyRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IKey, protos.google.cloud.recaptchaenterprise.v1.ICreateKeyRequest | null | undefined, {} | null | undefined>): void;
    createKey(request: protos.google.cloud.recaptchaenterprise.v1.ICreateKeyRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IKey, protos.google.cloud.recaptchaenterprise.v1.ICreateKeyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Returns the secret key related to the specified public key.
     * You must use the legacy secret key only in a 3rd party integration with
     * legacy reCAPTCHA.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.key
     *   Required. The public key name linked to the requested secret key in the
     *   format `projects/{project}/keys/{key}`.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyResponse|RetrieveLegacySecretKeyResponse}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.retrieve_legacy_secret_key.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_RetrieveLegacySecretKey_async
     */
    retrieveLegacySecretKey(request?: protos.google.cloud.recaptchaenterprise.v1.IRetrieveLegacySecretKeyRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IRetrieveLegacySecretKeyResponse,
        protos.google.cloud.recaptchaenterprise.v1.IRetrieveLegacySecretKeyRequest | undefined,
        {} | undefined
    ]>;
    retrieveLegacySecretKey(request: protos.google.cloud.recaptchaenterprise.v1.IRetrieveLegacySecretKeyRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IRetrieveLegacySecretKeyResponse, protos.google.cloud.recaptchaenterprise.v1.IRetrieveLegacySecretKeyRequest | null | undefined, {} | null | undefined>): void;
    retrieveLegacySecretKey(request: protos.google.cloud.recaptchaenterprise.v1.IRetrieveLegacySecretKeyRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IRetrieveLegacySecretKeyResponse, protos.google.cloud.recaptchaenterprise.v1.IRetrieveLegacySecretKeyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Returns the specified key.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.name
     *   Required. The name of the requested key, in the format
     *   `projects/{project}/keys/{key}`.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.Key|Key}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.get_key.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_GetKey_async
     */
    getKey(request?: protos.google.cloud.recaptchaenterprise.v1.IGetKeyRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IKey,
        protos.google.cloud.recaptchaenterprise.v1.IGetKeyRequest | undefined,
        {} | undefined
    ]>;
    getKey(request: protos.google.cloud.recaptchaenterprise.v1.IGetKeyRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IKey, protos.google.cloud.recaptchaenterprise.v1.IGetKeyRequest | null | undefined, {} | null | undefined>): void;
    getKey(request: protos.google.cloud.recaptchaenterprise.v1.IGetKeyRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IKey, protos.google.cloud.recaptchaenterprise.v1.IGetKeyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Updates the specified key.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {google.cloud.recaptchaenterprise.v1.Key} request.key
     *   Required. The key to update.
     * @param {google.protobuf.FieldMask} [request.updateMask]
     *   Optional. The mask to control which fields of the key get updated. If the
     *   mask is not present, all fields are updated.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.Key|Key}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.update_key.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_UpdateKey_async
     */
    updateKey(request?: protos.google.cloud.recaptchaenterprise.v1.IUpdateKeyRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IKey,
        protos.google.cloud.recaptchaenterprise.v1.IUpdateKeyRequest | undefined,
        {} | undefined
    ]>;
    updateKey(request: protos.google.cloud.recaptchaenterprise.v1.IUpdateKeyRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IKey, protos.google.cloud.recaptchaenterprise.v1.IUpdateKeyRequest | null | undefined, {} | null | undefined>): void;
    updateKey(request: protos.google.cloud.recaptchaenterprise.v1.IUpdateKeyRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IKey, protos.google.cloud.recaptchaenterprise.v1.IUpdateKeyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Deletes the specified key.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.name
     *   Required. The name of the key to be deleted, in the format
     *   `projects/{project}/keys/{key}`.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.protobuf.Empty|Empty}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.delete_key.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_DeleteKey_async
     */
    deleteKey(request?: protos.google.cloud.recaptchaenterprise.v1.IDeleteKeyRequest, options?: CallOptions): Promise<[
        protos.google.protobuf.IEmpty,
        protos.google.cloud.recaptchaenterprise.v1.IDeleteKeyRequest | undefined,
        {} | undefined
    ]>;
    deleteKey(request: protos.google.cloud.recaptchaenterprise.v1.IDeleteKeyRequest, options: CallOptions, callback: Callback<protos.google.protobuf.IEmpty, protos.google.cloud.recaptchaenterprise.v1.IDeleteKeyRequest | null | undefined, {} | null | undefined>): void;
    deleteKey(request: protos.google.cloud.recaptchaenterprise.v1.IDeleteKeyRequest, callback: Callback<protos.google.protobuf.IEmpty, protos.google.cloud.recaptchaenterprise.v1.IDeleteKeyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Migrates an existing key from reCAPTCHA to reCAPTCHA Enterprise.
     * Once a key is migrated, it can be used from either product. SiteVerify
     * requests are billed as CreateAssessment calls. You must be
     * authenticated as one of the current owners of the reCAPTCHA Key, and
     * your user must have the reCAPTCHA Enterprise Admin IAM role in the
     * destination project.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.name
     *   Required. The name of the key to be migrated, in the format
     *   `projects/{project}/keys/{key}`.
     * @param {boolean} [request.skipBillingCheck]
     *   Optional. If true, skips the billing check.
     *   A reCAPTCHA Enterprise key or migrated key behaves differently than a
     *   reCAPTCHA (non-Enterprise version) key when you reach a quota limit (see
     *   https://docs.cloud.google.com/recaptcha/quotas#quota_limit). To avoid
     *   any disruption of your usage, we check that a billing account is present.
     *   If your usage of reCAPTCHA is under the free quota, you can safely skip the
     *   billing check and proceed with the migration. See
     *   https://cloud.google.com/recaptcha/docs/billing-information.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.Key|Key}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.migrate_key.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_MigrateKey_async
     */
    migrateKey(request?: protos.google.cloud.recaptchaenterprise.v1.IMigrateKeyRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IKey,
        protos.google.cloud.recaptchaenterprise.v1.IMigrateKeyRequest | undefined,
        {} | undefined
    ]>;
    migrateKey(request: protos.google.cloud.recaptchaenterprise.v1.IMigrateKeyRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IKey, protos.google.cloud.recaptchaenterprise.v1.IMigrateKeyRequest | null | undefined, {} | null | undefined>): void;
    migrateKey(request: protos.google.cloud.recaptchaenterprise.v1.IMigrateKeyRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IKey, protos.google.cloud.recaptchaenterprise.v1.IMigrateKeyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Adds an IP override to a key. The following restrictions hold:
     * * The maximum number of IP overrides per key is 1000.
     * * For any conflict (such as IP already exists or IP part of an existing
     *   IP range), an error is returned.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.name
     *   Required. The name of the key to which the IP override is added, in the
     *   format `projects/{project}/keys/{key}`.
     * @param {google.cloud.recaptchaenterprise.v1.IpOverrideData} request.ipOverrideData
     *   Required. IP override added to the key.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.AddIpOverrideResponse|AddIpOverrideResponse}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.add_ip_override.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_AddIpOverride_async
     */
    addIpOverride(request?: protos.google.cloud.recaptchaenterprise.v1.IAddIpOverrideRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IAddIpOverrideResponse,
        protos.google.cloud.recaptchaenterprise.v1.IAddIpOverrideRequest | undefined,
        {} | undefined
    ]>;
    addIpOverride(request: protos.google.cloud.recaptchaenterprise.v1.IAddIpOverrideRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IAddIpOverrideResponse, protos.google.cloud.recaptchaenterprise.v1.IAddIpOverrideRequest | null | undefined, {} | null | undefined>): void;
    addIpOverride(request: protos.google.cloud.recaptchaenterprise.v1.IAddIpOverrideRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IAddIpOverrideResponse, protos.google.cloud.recaptchaenterprise.v1.IAddIpOverrideRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Removes an IP override from a key. The following restrictions hold:
     * * If the IP isn't found in an existing IP override, a `NOT_FOUND` error
     * is returned.
     * * If the IP is found in an existing IP override, but the
     * override type does not match, a `NOT_FOUND` error is returned.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.name
     *   Required. The name of the key from which the IP override is removed, in the
     *   format `projects/{project}/keys/{key}`.
     * @param {google.cloud.recaptchaenterprise.v1.IpOverrideData} request.ipOverrideData
     *   Required. IP override to be removed from the key.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.RemoveIpOverrideResponse|RemoveIpOverrideResponse}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.remove_ip_override.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_RemoveIpOverride_async
     */
    removeIpOverride(request?: protos.google.cloud.recaptchaenterprise.v1.IRemoveIpOverrideRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IRemoveIpOverrideResponse,
        protos.google.cloud.recaptchaenterprise.v1.IRemoveIpOverrideRequest | undefined,
        {} | undefined
    ]>;
    removeIpOverride(request: protos.google.cloud.recaptchaenterprise.v1.IRemoveIpOverrideRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IRemoveIpOverrideResponse, protos.google.cloud.recaptchaenterprise.v1.IRemoveIpOverrideRequest | null | undefined, {} | null | undefined>): void;
    removeIpOverride(request: protos.google.cloud.recaptchaenterprise.v1.IRemoveIpOverrideRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IRemoveIpOverrideResponse, protos.google.cloud.recaptchaenterprise.v1.IRemoveIpOverrideRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Get some aggregated metrics for a Key. This data can be used to build
     * dashboards.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.name
     *   Required. The name of the requested metrics, in the format
     *   `projects/{project}/keys/{key}/metrics`.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.Metrics|Metrics}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.get_metrics.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_GetMetrics_async
     */
    getMetrics(request?: protos.google.cloud.recaptchaenterprise.v1.IGetMetricsRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IMetrics,
        protos.google.cloud.recaptchaenterprise.v1.IGetMetricsRequest | undefined,
        {} | undefined
    ]>;
    getMetrics(request: protos.google.cloud.recaptchaenterprise.v1.IGetMetricsRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IMetrics, protos.google.cloud.recaptchaenterprise.v1.IGetMetricsRequest | null | undefined, {} | null | undefined>): void;
    getMetrics(request: protos.google.cloud.recaptchaenterprise.v1.IGetMetricsRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IMetrics, protos.google.cloud.recaptchaenterprise.v1.IGetMetricsRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Creates a new FirewallPolicy, specifying conditions at which reCAPTCHA
     * Enterprise actions can be executed.
     * A project may have a maximum of 1000 policies.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project this policy applies to, in the format
     *   `projects/{project}`.
     * @param {google.cloud.recaptchaenterprise.v1.FirewallPolicy} request.firewallPolicy
     *   Required. Information to create the policy.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.FirewallPolicy|FirewallPolicy}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.create_firewall_policy.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_CreateFirewallPolicy_async
     */
    createFirewallPolicy(request?: protos.google.cloud.recaptchaenterprise.v1.ICreateFirewallPolicyRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy,
        protos.google.cloud.recaptchaenterprise.v1.ICreateFirewallPolicyRequest | undefined,
        {} | undefined
    ]>;
    createFirewallPolicy(request: protos.google.cloud.recaptchaenterprise.v1.ICreateFirewallPolicyRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy, protos.google.cloud.recaptchaenterprise.v1.ICreateFirewallPolicyRequest | null | undefined, {} | null | undefined>): void;
    createFirewallPolicy(request: protos.google.cloud.recaptchaenterprise.v1.ICreateFirewallPolicyRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy, protos.google.cloud.recaptchaenterprise.v1.ICreateFirewallPolicyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Returns the specified firewall policy.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.name
     *   Required. The name of the requested policy, in the format
     *   `projects/{project}/firewallpolicies/{firewallpolicy}`.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.FirewallPolicy|FirewallPolicy}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.get_firewall_policy.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_GetFirewallPolicy_async
     */
    getFirewallPolicy(request?: protos.google.cloud.recaptchaenterprise.v1.IGetFirewallPolicyRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy,
        protos.google.cloud.recaptchaenterprise.v1.IGetFirewallPolicyRequest | undefined,
        {} | undefined
    ]>;
    getFirewallPolicy(request: protos.google.cloud.recaptchaenterprise.v1.IGetFirewallPolicyRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy, protos.google.cloud.recaptchaenterprise.v1.IGetFirewallPolicyRequest | null | undefined, {} | null | undefined>): void;
    getFirewallPolicy(request: protos.google.cloud.recaptchaenterprise.v1.IGetFirewallPolicyRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy, protos.google.cloud.recaptchaenterprise.v1.IGetFirewallPolicyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Updates the specified firewall policy.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {google.cloud.recaptchaenterprise.v1.FirewallPolicy} request.firewallPolicy
     *   Required. The policy to update.
     * @param {google.protobuf.FieldMask} [request.updateMask]
     *   Optional. The mask to control which fields of the policy get updated. If
     *   the mask is not present, all fields are updated.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.FirewallPolicy|FirewallPolicy}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.update_firewall_policy.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_UpdateFirewallPolicy_async
     */
    updateFirewallPolicy(request?: protos.google.cloud.recaptchaenterprise.v1.IUpdateFirewallPolicyRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy,
        protos.google.cloud.recaptchaenterprise.v1.IUpdateFirewallPolicyRequest | undefined,
        {} | undefined
    ]>;
    updateFirewallPolicy(request: protos.google.cloud.recaptchaenterprise.v1.IUpdateFirewallPolicyRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy, protos.google.cloud.recaptchaenterprise.v1.IUpdateFirewallPolicyRequest | null | undefined, {} | null | undefined>): void;
    updateFirewallPolicy(request: protos.google.cloud.recaptchaenterprise.v1.IUpdateFirewallPolicyRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy, protos.google.cloud.recaptchaenterprise.v1.IUpdateFirewallPolicyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Deletes the specified firewall policy.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.name
     *   Required. The name of the policy to be deleted, in the format
     *   `projects/{project}/firewallpolicies/{firewallpolicy}`.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.protobuf.Empty|Empty}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.delete_firewall_policy.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_DeleteFirewallPolicy_async
     */
    deleteFirewallPolicy(request?: protos.google.cloud.recaptchaenterprise.v1.IDeleteFirewallPolicyRequest, options?: CallOptions): Promise<[
        protos.google.protobuf.IEmpty,
        protos.google.cloud.recaptchaenterprise.v1.IDeleteFirewallPolicyRequest | undefined,
        {} | undefined
    ]>;
    deleteFirewallPolicy(request: protos.google.cloud.recaptchaenterprise.v1.IDeleteFirewallPolicyRequest, options: CallOptions, callback: Callback<protos.google.protobuf.IEmpty, protos.google.cloud.recaptchaenterprise.v1.IDeleteFirewallPolicyRequest | null | undefined, {} | null | undefined>): void;
    deleteFirewallPolicy(request: protos.google.cloud.recaptchaenterprise.v1.IDeleteFirewallPolicyRequest, callback: Callback<protos.google.protobuf.IEmpty, protos.google.cloud.recaptchaenterprise.v1.IDeleteFirewallPolicyRequest | null | undefined, {} | null | undefined>): void;
    /**
     * Reorders all firewall policies.
     *
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project to list the policies for, in the format
     *   `projects/{project}`.
     * @param {string[]} request.names
     *   Required. A list containing all policy names, in the new order. Each name
     *   is in the format `projects/{project}/firewallpolicies/{firewallpolicy}`.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Promise} - The promise which resolves to an array.
     *   The first element of the array is an object representing {@link protos.google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesResponse|ReorderFirewallPoliciesResponse}.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.reorder_firewall_policies.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_ReorderFirewallPolicies_async
     */
    reorderFirewallPolicies(request?: protos.google.cloud.recaptchaenterprise.v1.IReorderFirewallPoliciesRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IReorderFirewallPoliciesResponse,
        protos.google.cloud.recaptchaenterprise.v1.IReorderFirewallPoliciesRequest | undefined,
        {} | undefined
    ]>;
    reorderFirewallPolicies(request: protos.google.cloud.recaptchaenterprise.v1.IReorderFirewallPoliciesRequest, options: CallOptions, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IReorderFirewallPoliciesResponse, protos.google.cloud.recaptchaenterprise.v1.IReorderFirewallPoliciesRequest | null | undefined, {} | null | undefined>): void;
    reorderFirewallPolicies(request: protos.google.cloud.recaptchaenterprise.v1.IReorderFirewallPoliciesRequest, callback: Callback<protos.google.cloud.recaptchaenterprise.v1.IReorderFirewallPoliciesResponse, protos.google.cloud.recaptchaenterprise.v1.IReorderFirewallPoliciesRequest | null | undefined, {} | null | undefined>): void;
    /**
    * Returns the list of all keys that belong to a project.
    *
    * @param {Object} request
    *   The request object that will be sent.
    * @param {string} request.parent
    *   Required. The name of the project that contains the keys that is
    *   listed, in the format `projects/{project}`.
    * @param {number} [request.pageSize]
    *   Optional. The maximum number of keys to return. Default is 10. Max limit is
    *   1000.
    * @param {string} [request.pageToken]
    *   Optional. The next_page_token value returned from a previous.
    *   ListKeysRequest, if any.
    * @param {object} [options]
    *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
    * @returns {Promise} - The promise which resolves to an array.
    *   The first element of the array is Array of {@link protos.google.cloud.recaptchaenterprise.v1.Key|Key}.
    *   The client library will perform auto-pagination by default: it will call the API as many
    *   times as needed and will merge results from all the pages into this array.
    *   Note that it can affect your quota.
    *   We recommend using `listKeysAsync()`
    *   method described below for async iteration which you can stop as needed.
    *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
    *   for more details and examples.
    */
    listKeys(request?: protos.google.cloud.recaptchaenterprise.v1.IListKeysRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IKey[],
        protos.google.cloud.recaptchaenterprise.v1.IListKeysRequest | null,
        protos.google.cloud.recaptchaenterprise.v1.IListKeysResponse
    ]>;
    listKeys(request: protos.google.cloud.recaptchaenterprise.v1.IListKeysRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListKeysRequest, protos.google.cloud.recaptchaenterprise.v1.IListKeysResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IKey>): void;
    listKeys(request: protos.google.cloud.recaptchaenterprise.v1.IListKeysRequest, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListKeysRequest, protos.google.cloud.recaptchaenterprise.v1.IListKeysResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IKey>): void;
    /**
     * Equivalent to `listKeys`, but returns a NodeJS Stream object.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project that contains the keys that is
     *   listed, in the format `projects/{project}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of keys to return. Default is 10. Max limit is
     *   1000.
     * @param {string} [request.pageToken]
     *   Optional. The next_page_token value returned from a previous.
     *   ListKeysRequest, if any.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Stream}
     *   An object stream which emits an object representing {@link protos.google.cloud.recaptchaenterprise.v1.Key|Key} on 'data' event.
     *   The client library will perform auto-pagination by default: it will call the API as many
     *   times as needed. Note that it can affect your quota.
     *   We recommend using `listKeysAsync()`
     *   method described below for async iteration which you can stop as needed.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     */
    listKeysStream(request?: protos.google.cloud.recaptchaenterprise.v1.IListKeysRequest, options?: CallOptions): Transform;
    /**
     * Equivalent to `listKeys`, but returns an iterable object.
     *
     * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project that contains the keys that is
     *   listed, in the format `projects/{project}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of keys to return. Default is 10. Max limit is
     *   1000.
     * @param {string} [request.pageToken]
     *   Optional. The next_page_token value returned from a previous.
     *   ListKeysRequest, if any.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Object}
     *   An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
     *   When you iterate the returned iterable, each element will be an object representing
     *   {@link protos.google.cloud.recaptchaenterprise.v1.Key|Key}. The API will be called under the hood as needed, once per the page,
     *   so you can stop the iteration when you don't need more results.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.list_keys.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_ListKeys_async
     */
    listKeysAsync(request?: protos.google.cloud.recaptchaenterprise.v1.IListKeysRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.recaptchaenterprise.v1.IKey>;
    /**
    * Lists all IP overrides for a key.
    *
    * @param {Object} request
    *   The request object that will be sent.
    * @param {string} request.parent
    *   Required. The parent key for which the IP overrides are listed, in the
    *   format `projects/{project}/keys/{key}`.
    * @param {number} [request.pageSize]
    *   Optional. The maximum number of overrides to return. Default is 10. Max
    *   limit is 100. If the number of overrides is less than the page_size, all
    *   overrides are returned. If the page size is more than 100, it is coerced to
    *   100.
    * @param {string} [request.pageToken]
    *   Optional. The next_page_token value returned from a previous
    *   ListIpOverridesRequest, if any.
    * @param {object} [options]
    *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
    * @returns {Promise} - The promise which resolves to an array.
    *   The first element of the array is Array of {@link protos.google.cloud.recaptchaenterprise.v1.IpOverrideData|IpOverrideData}.
    *   The client library will perform auto-pagination by default: it will call the API as many
    *   times as needed and will merge results from all the pages into this array.
    *   Note that it can affect your quota.
    *   We recommend using `listIpOverridesAsync()`
    *   method described below for async iteration which you can stop as needed.
    *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
    *   for more details and examples.
    */
    listIpOverrides(request?: protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IIpOverrideData[],
        protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesRequest | null,
        protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesResponse
    ]>;
    listIpOverrides(request: protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesRequest, protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IIpOverrideData>): void;
    listIpOverrides(request: protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesRequest, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesRequest, protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IIpOverrideData>): void;
    /**
     * Equivalent to `listIpOverrides`, but returns a NodeJS Stream object.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The parent key for which the IP overrides are listed, in the
     *   format `projects/{project}/keys/{key}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of overrides to return. Default is 10. Max
     *   limit is 100. If the number of overrides is less than the page_size, all
     *   overrides are returned. If the page size is more than 100, it is coerced to
     *   100.
     * @param {string} [request.pageToken]
     *   Optional. The next_page_token value returned from a previous
     *   ListIpOverridesRequest, if any.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Stream}
     *   An object stream which emits an object representing {@link protos.google.cloud.recaptchaenterprise.v1.IpOverrideData|IpOverrideData} on 'data' event.
     *   The client library will perform auto-pagination by default: it will call the API as many
     *   times as needed. Note that it can affect your quota.
     *   We recommend using `listIpOverridesAsync()`
     *   method described below for async iteration which you can stop as needed.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     */
    listIpOverridesStream(request?: protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesRequest, options?: CallOptions): Transform;
    /**
     * Equivalent to `listIpOverrides`, but returns an iterable object.
     *
     * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The parent key for which the IP overrides are listed, in the
     *   format `projects/{project}/keys/{key}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of overrides to return. Default is 10. Max
     *   limit is 100. If the number of overrides is less than the page_size, all
     *   overrides are returned. If the page size is more than 100, it is coerced to
     *   100.
     * @param {string} [request.pageToken]
     *   Optional. The next_page_token value returned from a previous
     *   ListIpOverridesRequest, if any.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Object}
     *   An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
     *   When you iterate the returned iterable, each element will be an object representing
     *   {@link protos.google.cloud.recaptchaenterprise.v1.IpOverrideData|IpOverrideData}. The API will be called under the hood as needed, once per the page,
     *   so you can stop the iteration when you don't need more results.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.list_ip_overrides.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_ListIpOverrides_async
     */
    listIpOverridesAsync(request?: protos.google.cloud.recaptchaenterprise.v1.IListIpOverridesRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.recaptchaenterprise.v1.IIpOverrideData>;
    /**
    * Returns the list of all firewall policies that belong to a project.
    *
    * @param {Object} request
    *   The request object that will be sent.
    * @param {string} request.parent
    *   Required. The name of the project to list the policies for, in the format
    *   `projects/{project}`.
    * @param {number} [request.pageSize]
    *   Optional. The maximum number of policies to return. Default is 10. Max
    *   limit is 1000.
    * @param {string} [request.pageToken]
    *   Optional. The next_page_token value returned from a previous.
    *   ListFirewallPoliciesRequest, if any.
    * @param {object} [options]
    *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
    * @returns {Promise} - The promise which resolves to an array.
    *   The first element of the array is Array of {@link protos.google.cloud.recaptchaenterprise.v1.FirewallPolicy|FirewallPolicy}.
    *   The client library will perform auto-pagination by default: it will call the API as many
    *   times as needed and will merge results from all the pages into this array.
    *   Note that it can affect your quota.
    *   We recommend using `listFirewallPoliciesAsync()`
    *   method described below for async iteration which you can stop as needed.
    *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
    *   for more details and examples.
    */
    listFirewallPolicies(request?: protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy[],
        protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesRequest | null,
        protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesResponse
    ]>;
    listFirewallPolicies(request: protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesRequest, protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy>): void;
    listFirewallPolicies(request: protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesRequest, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesRequest, protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy>): void;
    /**
     * Equivalent to `listFirewallPolicies`, but returns a NodeJS Stream object.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project to list the policies for, in the format
     *   `projects/{project}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of policies to return. Default is 10. Max
     *   limit is 1000.
     * @param {string} [request.pageToken]
     *   Optional. The next_page_token value returned from a previous.
     *   ListFirewallPoliciesRequest, if any.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Stream}
     *   An object stream which emits an object representing {@link protos.google.cloud.recaptchaenterprise.v1.FirewallPolicy|FirewallPolicy} on 'data' event.
     *   The client library will perform auto-pagination by default: it will call the API as many
     *   times as needed. Note that it can affect your quota.
     *   We recommend using `listFirewallPoliciesAsync()`
     *   method described below for async iteration which you can stop as needed.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     */
    listFirewallPoliciesStream(request?: protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesRequest, options?: CallOptions): Transform;
    /**
     * Equivalent to `listFirewallPolicies`, but returns an iterable object.
     *
     * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project to list the policies for, in the format
     *   `projects/{project}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of policies to return. Default is 10. Max
     *   limit is 1000.
     * @param {string} [request.pageToken]
     *   Optional. The next_page_token value returned from a previous.
     *   ListFirewallPoliciesRequest, if any.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Object}
     *   An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
     *   When you iterate the returned iterable, each element will be an object representing
     *   {@link protos.google.cloud.recaptchaenterprise.v1.FirewallPolicy|FirewallPolicy}. The API will be called under the hood as needed, once per the page,
     *   so you can stop the iteration when you don't need more results.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.list_firewall_policies.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_ListFirewallPolicies_async
     */
    listFirewallPoliciesAsync(request?: protos.google.cloud.recaptchaenterprise.v1.IListFirewallPoliciesRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.recaptchaenterprise.v1.IFirewallPolicy>;
    /**
    * List groups of related accounts.
    *
    * @param {Object} request
    *   The request object that will be sent.
    * @param {string} request.parent
    *   Required. The name of the project to list related account groups from, in
    *   the format `projects/{project}`.
    * @param {number} [request.pageSize]
    *   Optional. The maximum number of groups to return. The service might return
    *   fewer than this value. If unspecified, at most 50 groups are returned. The
    *   maximum value is 1000; values above 1000 are coerced to 1000.
    * @param {string} [request.pageToken]
    *   Optional. A page token, received from a previous `ListRelatedAccountGroups`
    *   call. Provide this to retrieve the subsequent page.
    *
    *   When paginating, all other parameters provided to
    *   `ListRelatedAccountGroups` must match the call that provided the page
    *   token.
    * @param {object} [options]
    *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
    * @returns {Promise} - The promise which resolves to an array.
    *   The first element of the array is Array of {@link protos.google.cloud.recaptchaenterprise.v1.RelatedAccountGroup|RelatedAccountGroup}.
    *   The client library will perform auto-pagination by default: it will call the API as many
    *   times as needed and will merge results from all the pages into this array.
    *   Note that it can affect your quota.
    *   We recommend using `listRelatedAccountGroupsAsync()`
    *   method described below for async iteration which you can stop as needed.
    *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
    *   for more details and examples.
    */
    listRelatedAccountGroups(request?: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroup[],
        protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsRequest | null,
        protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsResponse
    ]>;
    listRelatedAccountGroups(request: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsRequest, protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroup>): void;
    listRelatedAccountGroups(request: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsRequest, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsRequest, protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroup>): void;
    /**
     * Equivalent to `listRelatedAccountGroups`, but returns a NodeJS Stream object.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project to list related account groups from, in
     *   the format `projects/{project}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of groups to return. The service might return
     *   fewer than this value. If unspecified, at most 50 groups are returned. The
     *   maximum value is 1000; values above 1000 are coerced to 1000.
     * @param {string} [request.pageToken]
     *   Optional. A page token, received from a previous `ListRelatedAccountGroups`
     *   call. Provide this to retrieve the subsequent page.
     *
     *   When paginating, all other parameters provided to
     *   `ListRelatedAccountGroups` must match the call that provided the page
     *   token.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Stream}
     *   An object stream which emits an object representing {@link protos.google.cloud.recaptchaenterprise.v1.RelatedAccountGroup|RelatedAccountGroup} on 'data' event.
     *   The client library will perform auto-pagination by default: it will call the API as many
     *   times as needed. Note that it can affect your quota.
     *   We recommend using `listRelatedAccountGroupsAsync()`
     *   method described below for async iteration which you can stop as needed.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     */
    listRelatedAccountGroupsStream(request?: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsRequest, options?: CallOptions): Transform;
    /**
     * Equivalent to `listRelatedAccountGroups`, but returns an iterable object.
     *
     * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The name of the project to list related account groups from, in
     *   the format `projects/{project}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of groups to return. The service might return
     *   fewer than this value. If unspecified, at most 50 groups are returned. The
     *   maximum value is 1000; values above 1000 are coerced to 1000.
     * @param {string} [request.pageToken]
     *   Optional. A page token, received from a previous `ListRelatedAccountGroups`
     *   call. Provide this to retrieve the subsequent page.
     *
     *   When paginating, all other parameters provided to
     *   `ListRelatedAccountGroups` must match the call that provided the page
     *   token.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Object}
     *   An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
     *   When you iterate the returned iterable, each element will be an object representing
     *   {@link protos.google.cloud.recaptchaenterprise.v1.RelatedAccountGroup|RelatedAccountGroup}. The API will be called under the hood as needed, once per the page,
     *   so you can stop the iteration when you don't need more results.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.list_related_account_groups.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_ListRelatedAccountGroups_async
     */
    listRelatedAccountGroupsAsync(request?: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupsRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroup>;
    /**
    * Get memberships in a group of related accounts.
    *
    * @param {Object} request
    *   The request object that will be sent.
    * @param {string} request.parent
    *   Required. The resource name for the related account group in the format
    *   `projects/{project}/relatedaccountgroups/{relatedaccountgroup}`.
    * @param {number} [request.pageSize]
    *   Optional. The maximum number of accounts to return. The service might
    *   return fewer than this value. If unspecified, at most 50 accounts are
    *   returned. The maximum value is 1000; values above 1000 are coerced to 1000.
    * @param {string} [request.pageToken]
    *   Optional. A page token, received from a previous
    *   `ListRelatedAccountGroupMemberships` call.
    *
    *   When paginating, all other parameters provided to
    *   `ListRelatedAccountGroupMemberships` must match the call that provided the
    *   page token.
    * @param {object} [options]
    *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
    * @returns {Promise} - The promise which resolves to an array.
    *   The first element of the array is Array of {@link protos.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership|RelatedAccountGroupMembership}.
    *   The client library will perform auto-pagination by default: it will call the API as many
    *   times as needed and will merge results from all the pages into this array.
    *   Note that it can affect your quota.
    *   We recommend using `listRelatedAccountGroupMembershipsAsync()`
    *   method described below for async iteration which you can stop as needed.
    *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
    *   for more details and examples.
    */
    listRelatedAccountGroupMemberships(request?: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroupMembership[],
        protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsRequest | null,
        protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsResponse
    ]>;
    listRelatedAccountGroupMemberships(request: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsRequest, protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroupMembership>): void;
    listRelatedAccountGroupMemberships(request: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsRequest, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsRequest, protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroupMembership>): void;
    /**
     * Equivalent to `listRelatedAccountGroupMemberships`, but returns a NodeJS Stream object.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The resource name for the related account group in the format
     *   `projects/{project}/relatedaccountgroups/{relatedaccountgroup}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of accounts to return. The service might
     *   return fewer than this value. If unspecified, at most 50 accounts are
     *   returned. The maximum value is 1000; values above 1000 are coerced to 1000.
     * @param {string} [request.pageToken]
     *   Optional. A page token, received from a previous
     *   `ListRelatedAccountGroupMemberships` call.
     *
     *   When paginating, all other parameters provided to
     *   `ListRelatedAccountGroupMemberships` must match the call that provided the
     *   page token.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Stream}
     *   An object stream which emits an object representing {@link protos.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership|RelatedAccountGroupMembership} on 'data' event.
     *   The client library will perform auto-pagination by default: it will call the API as many
     *   times as needed. Note that it can affect your quota.
     *   We recommend using `listRelatedAccountGroupMembershipsAsync()`
     *   method described below for async iteration which you can stop as needed.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     */
    listRelatedAccountGroupMembershipsStream(request?: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsRequest, options?: CallOptions): Transform;
    /**
     * Equivalent to `listRelatedAccountGroupMemberships`, but returns an iterable object.
     *
     * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.parent
     *   Required. The resource name for the related account group in the format
     *   `projects/{project}/relatedaccountgroups/{relatedaccountgroup}`.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of accounts to return. The service might
     *   return fewer than this value. If unspecified, at most 50 accounts are
     *   returned. The maximum value is 1000; values above 1000 are coerced to 1000.
     * @param {string} [request.pageToken]
     *   Optional. A page token, received from a previous
     *   `ListRelatedAccountGroupMemberships` call.
     *
     *   When paginating, all other parameters provided to
     *   `ListRelatedAccountGroupMemberships` must match the call that provided the
     *   page token.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Object}
     *   An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
     *   When you iterate the returned iterable, each element will be an object representing
     *   {@link protos.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership|RelatedAccountGroupMembership}. The API will be called under the hood as needed, once per the page,
     *   so you can stop the iteration when you don't need more results.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.list_related_account_group_memberships.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_ListRelatedAccountGroupMemberships_async
     */
    listRelatedAccountGroupMembershipsAsync(request?: protos.google.cloud.recaptchaenterprise.v1.IListRelatedAccountGroupMembershipsRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroupMembership>;
    /**
    * Search group memberships related to a given account.
    *
    * @param {Object} request
    *   The request object that will be sent.
    * @param {string} request.project
    *   Required. The name of the project to search related account group
    *   memberships from. Specify the project name in the following format:
    *   `projects/{project}`.
    * @param {string} [request.accountId]
    *   Optional. The unique stable account identifier used to search connections.
    *   The identifier should correspond to an `account_id` provided in a previous
    *   `CreateAssessment` or `AnnotateAssessment` call. Either hashed_account_id
    *   or account_id must be set, but not both.
    * @param {Buffer} [request.hashedAccountId]
    *   Optional. Deprecated: use `account_id` instead.
    *   The unique stable hashed account identifier used to search connections. The
    *   identifier should correspond to a `hashed_account_id` provided in a
    *   previous `CreateAssessment` or `AnnotateAssessment` call. Either
    *   hashed_account_id or account_id must be set, but not both.
    * @param {number} [request.pageSize]
    *   Optional. The maximum number of groups to return. The service might return
    *   fewer than this value. If unspecified, at most 50 groups are returned. The
    *   maximum value is 1000; values above 1000 are coerced to 1000.
    * @param {string} [request.pageToken]
    *   Optional. A page token, received from a previous
    *   `SearchRelatedAccountGroupMemberships` call. Provide this to retrieve the
    *   subsequent page.
    *
    *   When paginating, all other parameters provided to
    *   `SearchRelatedAccountGroupMemberships` must match the call that provided
    *   the page token.
    * @param {object} [options]
    *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
    * @returns {Promise} - The promise which resolves to an array.
    *   The first element of the array is Array of {@link protos.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership|RelatedAccountGroupMembership}.
    *   The client library will perform auto-pagination by default: it will call the API as many
    *   times as needed and will merge results from all the pages into this array.
    *   Note that it can affect your quota.
    *   We recommend using `searchRelatedAccountGroupMembershipsAsync()`
    *   method described below for async iteration which you can stop as needed.
    *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
    *   for more details and examples.
    */
    searchRelatedAccountGroupMemberships(request?: protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsRequest, options?: CallOptions): Promise<[
        protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroupMembership[],
        protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsRequest | null,
        protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsResponse
    ]>;
    searchRelatedAccountGroupMemberships(request: protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsRequest, protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroupMembership>): void;
    searchRelatedAccountGroupMemberships(request: protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsRequest, callback: PaginationCallback<protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsRequest, protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsResponse | null | undefined, protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroupMembership>): void;
    /**
     * Equivalent to `searchRelatedAccountGroupMemberships`, but returns a NodeJS Stream object.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.project
     *   Required. The name of the project to search related account group
     *   memberships from. Specify the project name in the following format:
     *   `projects/{project}`.
     * @param {string} [request.accountId]
     *   Optional. The unique stable account identifier used to search connections.
     *   The identifier should correspond to an `account_id` provided in a previous
     *   `CreateAssessment` or `AnnotateAssessment` call. Either hashed_account_id
     *   or account_id must be set, but not both.
     * @param {Buffer} [request.hashedAccountId]
     *   Optional. Deprecated: use `account_id` instead.
     *   The unique stable hashed account identifier used to search connections. The
     *   identifier should correspond to a `hashed_account_id` provided in a
     *   previous `CreateAssessment` or `AnnotateAssessment` call. Either
     *   hashed_account_id or account_id must be set, but not both.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of groups to return. The service might return
     *   fewer than this value. If unspecified, at most 50 groups are returned. The
     *   maximum value is 1000; values above 1000 are coerced to 1000.
     * @param {string} [request.pageToken]
     *   Optional. A page token, received from a previous
     *   `SearchRelatedAccountGroupMemberships` call. Provide this to retrieve the
     *   subsequent page.
     *
     *   When paginating, all other parameters provided to
     *   `SearchRelatedAccountGroupMemberships` must match the call that provided
     *   the page token.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Stream}
     *   An object stream which emits an object representing {@link protos.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership|RelatedAccountGroupMembership} on 'data' event.
     *   The client library will perform auto-pagination by default: it will call the API as many
     *   times as needed. Note that it can affect your quota.
     *   We recommend using `searchRelatedAccountGroupMembershipsAsync()`
     *   method described below for async iteration which you can stop as needed.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     */
    searchRelatedAccountGroupMembershipsStream(request?: protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsRequest, options?: CallOptions): Transform;
    /**
     * Equivalent to `searchRelatedAccountGroupMemberships`, but returns an iterable object.
     *
     * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
     * @param {Object} request
     *   The request object that will be sent.
     * @param {string} request.project
     *   Required. The name of the project to search related account group
     *   memberships from. Specify the project name in the following format:
     *   `projects/{project}`.
     * @param {string} [request.accountId]
     *   Optional. The unique stable account identifier used to search connections.
     *   The identifier should correspond to an `account_id` provided in a previous
     *   `CreateAssessment` or `AnnotateAssessment` call. Either hashed_account_id
     *   or account_id must be set, but not both.
     * @param {Buffer} [request.hashedAccountId]
     *   Optional. Deprecated: use `account_id` instead.
     *   The unique stable hashed account identifier used to search connections. The
     *   identifier should correspond to a `hashed_account_id` provided in a
     *   previous `CreateAssessment` or `AnnotateAssessment` call. Either
     *   hashed_account_id or account_id must be set, but not both.
     * @param {number} [request.pageSize]
     *   Optional. The maximum number of groups to return. The service might return
     *   fewer than this value. If unspecified, at most 50 groups are returned. The
     *   maximum value is 1000; values above 1000 are coerced to 1000.
     * @param {string} [request.pageToken]
     *   Optional. A page token, received from a previous
     *   `SearchRelatedAccountGroupMemberships` call. Provide this to retrieve the
     *   subsequent page.
     *
     *   When paginating, all other parameters provided to
     *   `SearchRelatedAccountGroupMemberships` must match the call that provided
     *   the page token.
     * @param {object} [options]
     *   Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
     * @returns {Object}
     *   An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
     *   When you iterate the returned iterable, each element will be an object representing
     *   {@link protos.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership|RelatedAccountGroupMembership}. The API will be called under the hood as needed, once per the page,
     *   so you can stop the iteration when you don't need more results.
     *   Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
     *   for more details and examples.
     * @example <caption>include:samples/generated/v1/recaptcha_enterprise_service.search_related_account_group_memberships.js</caption>
     * region_tag:recaptchaenterprise_v1_generated_RecaptchaEnterpriseService_SearchRelatedAccountGroupMemberships_async
     */
    searchRelatedAccountGroupMembershipsAsync(request?: protos.google.cloud.recaptchaenterprise.v1.ISearchRelatedAccountGroupMembershipsRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.recaptchaenterprise.v1.IRelatedAccountGroupMembership>;
    /**
     * Return a fully-qualified assessment resource name string.
     *
     * @param {string} project
     * @param {string} assessment
     * @returns {string} Resource name string.
     */
    assessmentPath(project: string, assessment: string): string;
    /**
     * Parse the project from Assessment resource.
     *
     * @param {string} assessmentName
     *   A fully-qualified path representing Assessment resource.
     * @returns {string} A string representing the project.
     */
    matchProjectFromAssessmentName(assessmentName: string): string | number;
    /**
     * Parse the assessment from Assessment resource.
     *
     * @param {string} assessmentName
     *   A fully-qualified path representing Assessment resource.
     * @returns {string} A string representing the assessment.
     */
    matchAssessmentFromAssessmentName(assessmentName: string): string | number;
    /**
     * Return a fully-qualified firewallPolicy resource name string.
     *
     * @param {string} project
     * @param {string} firewallpolicy
     * @returns {string} Resource name string.
     */
    firewallPolicyPath(project: string, firewallpolicy: string): string;
    /**
     * Parse the project from FirewallPolicy resource.
     *
     * @param {string} firewallPolicyName
     *   A fully-qualified path representing FirewallPolicy resource.
     * @returns {string} A string representing the project.
     */
    matchProjectFromFirewallPolicyName(firewallPolicyName: string): string | number;
    /**
     * Parse the firewallpolicy from FirewallPolicy resource.
     *
     * @param {string} firewallPolicyName
     *   A fully-qualified path representing FirewallPolicy resource.
     * @returns {string} A string representing the firewallpolicy.
     */
    matchFirewallpolicyFromFirewallPolicyName(firewallPolicyName: string): string | number;
    /**
     * Return a fully-qualified key resource name string.
     *
     * @param {string} project
     * @param {string} key
     * @returns {string} Resource name string.
     */
    keyPath(project: string, key: string): string;
    /**
     * Parse the project from Key resource.
     *
     * @param {string} keyName
     *   A fully-qualified path representing Key resource.
     * @returns {string} A string representing the project.
     */
    matchProjectFromKeyName(keyName: string): string | number;
    /**
     * Parse the key from Key resource.
     *
     * @param {string} keyName
     *   A fully-qualified path representing Key resource.
     * @returns {string} A string representing the key.
     */
    matchKeyFromKeyName(keyName: string): string | number;
    /**
     * Return a fully-qualified metrics resource name string.
     *
     * @param {string} project
     * @param {string} key
     * @returns {string} Resource name string.
     */
    metricsPath(project: string, key: string): string;
    /**
     * Parse the project from Metrics resource.
     *
     * @param {string} metricsName
     *   A fully-qualified path representing Metrics resource.
     * @returns {string} A string representing the project.
     */
    matchProjectFromMetricsName(metricsName: string): string | number;
    /**
     * Parse the key from Metrics resource.
     *
     * @param {string} metricsName
     *   A fully-qualified path representing Metrics resource.
     * @returns {string} A string representing the key.
     */
    matchKeyFromMetricsName(metricsName: string): string | number;
    /**
     * Return a fully-qualified project resource name string.
     *
     * @param {string} project
     * @returns {string} Resource name string.
     */
    projectPath(project: string): string;
    /**
     * Parse the project from Project resource.
     *
     * @param {string} projectName
     *   A fully-qualified path representing Project resource.
     * @returns {string} A string representing the project.
     */
    matchProjectFromProjectName(projectName: string): string | number;
    /**
     * Return a fully-qualified relatedAccountGroup resource name string.
     *
     * @param {string} project
     * @param {string} relatedaccountgroup
     * @returns {string} Resource name string.
     */
    relatedAccountGroupPath(project: string, relatedaccountgroup: string): string;
    /**
     * Parse the project from RelatedAccountGroup resource.
     *
     * @param {string} relatedAccountGroupName
     *   A fully-qualified path representing RelatedAccountGroup resource.
     * @returns {string} A string representing the project.
     */
    matchProjectFromRelatedAccountGroupName(relatedAccountGroupName: string): string | number;
    /**
     * Parse the relatedaccountgroup from RelatedAccountGroup resource.
     *
     * @param {string} relatedAccountGroupName
     *   A fully-qualified path representing RelatedAccountGroup resource.
     * @returns {string} A string representing the relatedaccountgroup.
     */
    matchRelatedaccountgroupFromRelatedAccountGroupName(relatedAccountGroupName: string): string | number;
    /**
     * Return a fully-qualified relatedAccountGroupMembership resource name string.
     *
     * @param {string} project
     * @param {string} relatedaccountgroup
     * @param {string} membership
     * @returns {string} Resource name string.
     */
    relatedAccountGroupMembershipPath(project: string, relatedaccountgroup: string, membership: string): string;
    /**
     * Parse the project from RelatedAccountGroupMembership resource.
     *
     * @param {string} relatedAccountGroupMembershipName
     *   A fully-qualified path representing RelatedAccountGroupMembership resource.
     * @returns {string} A string representing the project.
     */
    matchProjectFromRelatedAccountGroupMembershipName(relatedAccountGroupMembershipName: string): string | number;
    /**
     * Parse the relatedaccountgroup from RelatedAccountGroupMembership resource.
     *
     * @param {string} relatedAccountGroupMembershipName
     *   A fully-qualified path representing RelatedAccountGroupMembership resource.
     * @returns {string} A string representing the relatedaccountgroup.
     */
    matchRelatedaccountgroupFromRelatedAccountGroupMembershipName(relatedAccountGroupMembershipName: string): string | number;
    /**
     * Parse the membership from RelatedAccountGroupMembership resource.
     *
     * @param {string} relatedAccountGroupMembershipName
     *   A fully-qualified path representing RelatedAccountGroupMembership resource.
     * @returns {string} A string representing the membership.
     */
    matchMembershipFromRelatedAccountGroupMembershipName(relatedAccountGroupMembershipName: string): string | number;
    /**
     * Terminate the gRPC channel and close the client.
     *
     * The client will no longer be usable and all future behavior is undefined.
     * @returns {Promise} A promise that resolves when the client is closed.
     */
    close(): Promise<void>;
}
