import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
import type { GenerateServiceIdentityRequest } from "./serviceusage";
import type { ImportConsumerOverridesRequest } from "./serviceusage";
import type { ListConsumerOverridesResponse } from "./serviceusage";
import type { ListConsumerOverridesRequest } from "./serviceusage";
import type { DeleteConsumerOverrideRequest } from "./serviceusage";
import type { UpdateConsumerOverrideRequest } from "./serviceusage";
import type { CreateConsumerOverrideRequest } from "./serviceusage";
import type { ImportAdminOverridesRequest } from "./serviceusage";
import type { ListAdminOverridesResponse } from "./serviceusage";
import type { ListAdminOverridesRequest } from "./serviceusage";
import type { DeleteAdminOverrideRequest } from "./serviceusage";
import type { UpdateAdminOverrideRequest } from "./serviceusage";
import type { CreateAdminOverrideRequest } from "./serviceusage";
import type { ConsumerQuotaLimit } from "./resources";
import type { GetConsumerQuotaLimitRequest } from "./serviceusage";
import type { ConsumerQuotaMetric } from "./resources";
import type { GetConsumerQuotaMetricRequest } from "./serviceusage";
import type { ListConsumerQuotaMetricsResponse } from "./serviceusage";
import type { ListConsumerQuotaMetricsRequest } from "./serviceusage";
import type { BatchEnableServicesRequest } from "./serviceusage";
import type { ListServicesResponse } from "./serviceusage";
import type { ListServicesRequest } from "./serviceusage";
import type { Service } from "./resources";
import type { GetServiceRequest } from "./serviceusage";
import type { DisableServiceRequest } from "./serviceusage";
import type { Operation } from "../../../longrunning/operations";
import type { EnableServiceRequest } from "./serviceusage";
import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
/**
 * [Service Usage API](https://cloud.google.com/service-usage/docs/overview)
 *
 * @generated from protobuf service google.api.serviceusage.v1beta1.ServiceUsage
 */
export interface IServiceUsageClient {
    /**
     * Enables a service so that it can be used with a project.
     *
     * Operation response type: `google.protobuf.Empty`
     *
     * @deprecated
     * @generated from protobuf rpc: EnableService(google.api.serviceusage.v1beta1.EnableServiceRequest) returns (google.longrunning.Operation);
     */
    enableService(input: EnableServiceRequest, options?: RpcOptions): UnaryCall<EnableServiceRequest, Operation>;
    /**
     * Disables a service so that it can no longer be used with a project.
     * This prevents unintended usage that may cause unexpected billing
     * charges or security leaks.
     *
     * It is not valid to call the disable method on a service that is not
     * currently enabled. Callers will receive a `FAILED_PRECONDITION` status if
     * the target service is not currently enabled.
     *
     * Operation response type: `google.protobuf.Empty`
     *
     * @deprecated
     * @generated from protobuf rpc: DisableService(google.api.serviceusage.v1beta1.DisableServiceRequest) returns (google.longrunning.Operation);
     */
    disableService(input: DisableServiceRequest, options?: RpcOptions): UnaryCall<DisableServiceRequest, Operation>;
    /**
     * Returns the service configuration and enabled state for a given service.
     *
     * @deprecated
     * @generated from protobuf rpc: GetService(google.api.serviceusage.v1beta1.GetServiceRequest) returns (google.api.serviceusage.v1beta1.Service);
     */
    getService(input: GetServiceRequest, options?: RpcOptions): UnaryCall<GetServiceRequest, Service>;
    /**
     * Lists all services available to the specified project, and the current
     * state of those services with respect to the project. The list includes
     * all public services, all services for which the calling user has the
     * `servicemanagement.services.bind` permission, and all services that have
     * already been enabled on the project. The list can be filtered to
     * only include services in a specific state, for example to only include
     * services enabled on the project.
     *
     * @deprecated
     * @generated from protobuf rpc: ListServices(google.api.serviceusage.v1beta1.ListServicesRequest) returns (google.api.serviceusage.v1beta1.ListServicesResponse);
     */
    listServices(input: ListServicesRequest, options?: RpcOptions): UnaryCall<ListServicesRequest, ListServicesResponse>;
    /**
     * Enables multiple services on a project. The operation is atomic: if
     * enabling any service fails, then the entire batch fails, and no state
     * changes occur.
     *
     * Operation response type: `google.protobuf.Empty`
     *
     * @deprecated
     * @generated from protobuf rpc: BatchEnableServices(google.api.serviceusage.v1beta1.BatchEnableServicesRequest) returns (google.longrunning.Operation);
     */
    batchEnableServices(input: BatchEnableServicesRequest, options?: RpcOptions): UnaryCall<BatchEnableServicesRequest, Operation>;
    /**
     * Retrieves a summary of all quota information visible to the service
     * consumer, organized by service metric. Each metric includes information
     * about all of its defined limits. Each limit includes the limit
     * configuration (quota unit, preciseness, default value), the current
     * effective limit value, and all of the overrides applied to the limit.
     *
     * @generated from protobuf rpc: ListConsumerQuotaMetrics(google.api.serviceusage.v1beta1.ListConsumerQuotaMetricsRequest) returns (google.api.serviceusage.v1beta1.ListConsumerQuotaMetricsResponse);
     */
    listConsumerQuotaMetrics(input: ListConsumerQuotaMetricsRequest, options?: RpcOptions): UnaryCall<ListConsumerQuotaMetricsRequest, ListConsumerQuotaMetricsResponse>;
    /**
     * Retrieves a summary of quota information for a specific quota metric
     *
     * @generated from protobuf rpc: GetConsumerQuotaMetric(google.api.serviceusage.v1beta1.GetConsumerQuotaMetricRequest) returns (google.api.serviceusage.v1beta1.ConsumerQuotaMetric);
     */
    getConsumerQuotaMetric(input: GetConsumerQuotaMetricRequest, options?: RpcOptions): UnaryCall<GetConsumerQuotaMetricRequest, ConsumerQuotaMetric>;
    /**
     * Retrieves a summary of quota information for a specific quota limit.
     *
     * @generated from protobuf rpc: GetConsumerQuotaLimit(google.api.serviceusage.v1beta1.GetConsumerQuotaLimitRequest) returns (google.api.serviceusage.v1beta1.ConsumerQuotaLimit);
     */
    getConsumerQuotaLimit(input: GetConsumerQuotaLimitRequest, options?: RpcOptions): UnaryCall<GetConsumerQuotaLimitRequest, ConsumerQuotaLimit>;
    /**
     * Creates an admin override.
     * An admin override is applied by an administrator of a parent folder or
     * parent organization of the consumer receiving the override. An admin
     * override is intended to limit the amount of quota the consumer can use out
     * of the total quota pool allocated to all children of the folder or
     * organization.
     *
     * @generated from protobuf rpc: CreateAdminOverride(google.api.serviceusage.v1beta1.CreateAdminOverrideRequest) returns (google.longrunning.Operation);
     */
    createAdminOverride(input: CreateAdminOverrideRequest, options?: RpcOptions): UnaryCall<CreateAdminOverrideRequest, Operation>;
    /**
     * Updates an admin override.
     *
     * @generated from protobuf rpc: UpdateAdminOverride(google.api.serviceusage.v1beta1.UpdateAdminOverrideRequest) returns (google.longrunning.Operation);
     */
    updateAdminOverride(input: UpdateAdminOverrideRequest, options?: RpcOptions): UnaryCall<UpdateAdminOverrideRequest, Operation>;
    /**
     * Deletes an admin override.
     *
     * @generated from protobuf rpc: DeleteAdminOverride(google.api.serviceusage.v1beta1.DeleteAdminOverrideRequest) returns (google.longrunning.Operation);
     */
    deleteAdminOverride(input: DeleteAdminOverrideRequest, options?: RpcOptions): UnaryCall<DeleteAdminOverrideRequest, Operation>;
    /**
     * Lists all admin overrides on this limit.
     *
     * @generated from protobuf rpc: ListAdminOverrides(google.api.serviceusage.v1beta1.ListAdminOverridesRequest) returns (google.api.serviceusage.v1beta1.ListAdminOverridesResponse);
     */
    listAdminOverrides(input: ListAdminOverridesRequest, options?: RpcOptions): UnaryCall<ListAdminOverridesRequest, ListAdminOverridesResponse>;
    /**
     * Creates or updates multiple admin overrides atomically, all on the
     * same consumer, but on many different metrics or limits.
     * The name field in the quota override message should not be set.
     *
     * @generated from protobuf rpc: ImportAdminOverrides(google.api.serviceusage.v1beta1.ImportAdminOverridesRequest) returns (google.longrunning.Operation);
     */
    importAdminOverrides(input: ImportAdminOverridesRequest, options?: RpcOptions): UnaryCall<ImportAdminOverridesRequest, Operation>;
    /**
     * Creates a consumer override.
     * A consumer override is applied to the consumer on its own authority to
     * limit its own quota usage. Consumer overrides cannot be used to grant more
     * quota than would be allowed by admin overrides, producer overrides, or the
     * default limit of the service.
     *
     * @generated from protobuf rpc: CreateConsumerOverride(google.api.serviceusage.v1beta1.CreateConsumerOverrideRequest) returns (google.longrunning.Operation);
     */
    createConsumerOverride(input: CreateConsumerOverrideRequest, options?: RpcOptions): UnaryCall<CreateConsumerOverrideRequest, Operation>;
    /**
     * Updates a consumer override.
     *
     * @generated from protobuf rpc: UpdateConsumerOverride(google.api.serviceusage.v1beta1.UpdateConsumerOverrideRequest) returns (google.longrunning.Operation);
     */
    updateConsumerOverride(input: UpdateConsumerOverrideRequest, options?: RpcOptions): UnaryCall<UpdateConsumerOverrideRequest, Operation>;
    /**
     * Deletes a consumer override.
     *
     * @generated from protobuf rpc: DeleteConsumerOverride(google.api.serviceusage.v1beta1.DeleteConsumerOverrideRequest) returns (google.longrunning.Operation);
     */
    deleteConsumerOverride(input: DeleteConsumerOverrideRequest, options?: RpcOptions): UnaryCall<DeleteConsumerOverrideRequest, Operation>;
    /**
     * Lists all consumer overrides on this limit.
     *
     * @generated from protobuf rpc: ListConsumerOverrides(google.api.serviceusage.v1beta1.ListConsumerOverridesRequest) returns (google.api.serviceusage.v1beta1.ListConsumerOverridesResponse);
     */
    listConsumerOverrides(input: ListConsumerOverridesRequest, options?: RpcOptions): UnaryCall<ListConsumerOverridesRequest, ListConsumerOverridesResponse>;
    /**
     * Creates or updates multiple consumer overrides atomically, all on the
     * same consumer, but on many different metrics or limits.
     * The name field in the quota override message should not be set.
     *
     * @generated from protobuf rpc: ImportConsumerOverrides(google.api.serviceusage.v1beta1.ImportConsumerOverridesRequest) returns (google.longrunning.Operation);
     */
    importConsumerOverrides(input: ImportConsumerOverridesRequest, options?: RpcOptions): UnaryCall<ImportConsumerOverridesRequest, Operation>;
    /**
     * Generates service identity for service.
     *
     * @generated from protobuf rpc: GenerateServiceIdentity(google.api.serviceusage.v1beta1.GenerateServiceIdentityRequest) returns (google.longrunning.Operation);
     */
    generateServiceIdentity(input: GenerateServiceIdentityRequest, options?: RpcOptions): UnaryCall<GenerateServiceIdentityRequest, Operation>;
}
/**
 * [Service Usage API](https://cloud.google.com/service-usage/docs/overview)
 *
 * @generated from protobuf service google.api.serviceusage.v1beta1.ServiceUsage
 */
export declare class ServiceUsageClient implements IServiceUsageClient, ServiceInfo {
    private readonly _transport;
    typeName: string;
    methods: import("@protobuf-ts/runtime-rpc").MethodInfo<any, any>[];
    options: {
        [extensionName: string]: import("@protobuf-ts/runtime").JsonValue;
    };
    constructor(_transport: RpcTransport);
    /**
     * Enables a service so that it can be used with a project.
     *
     * Operation response type: `google.protobuf.Empty`
     *
     * @deprecated
     * @generated from protobuf rpc: EnableService(google.api.serviceusage.v1beta1.EnableServiceRequest) returns (google.longrunning.Operation);
     */
    enableService(input: EnableServiceRequest, options?: RpcOptions): UnaryCall<EnableServiceRequest, Operation>;
    /**
     * Disables a service so that it can no longer be used with a project.
     * This prevents unintended usage that may cause unexpected billing
     * charges or security leaks.
     *
     * It is not valid to call the disable method on a service that is not
     * currently enabled. Callers will receive a `FAILED_PRECONDITION` status if
     * the target service is not currently enabled.
     *
     * Operation response type: `google.protobuf.Empty`
     *
     * @deprecated
     * @generated from protobuf rpc: DisableService(google.api.serviceusage.v1beta1.DisableServiceRequest) returns (google.longrunning.Operation);
     */
    disableService(input: DisableServiceRequest, options?: RpcOptions): UnaryCall<DisableServiceRequest, Operation>;
    /**
     * Returns the service configuration and enabled state for a given service.
     *
     * @deprecated
     * @generated from protobuf rpc: GetService(google.api.serviceusage.v1beta1.GetServiceRequest) returns (google.api.serviceusage.v1beta1.Service);
     */
    getService(input: GetServiceRequest, options?: RpcOptions): UnaryCall<GetServiceRequest, Service>;
    /**
     * Lists all services available to the specified project, and the current
     * state of those services with respect to the project. The list includes
     * all public services, all services for which the calling user has the
     * `servicemanagement.services.bind` permission, and all services that have
     * already been enabled on the project. The list can be filtered to
     * only include services in a specific state, for example to only include
     * services enabled on the project.
     *
     * @deprecated
     * @generated from protobuf rpc: ListServices(google.api.serviceusage.v1beta1.ListServicesRequest) returns (google.api.serviceusage.v1beta1.ListServicesResponse);
     */
    listServices(input: ListServicesRequest, options?: RpcOptions): UnaryCall<ListServicesRequest, ListServicesResponse>;
    /**
     * Enables multiple services on a project. The operation is atomic: if
     * enabling any service fails, then the entire batch fails, and no state
     * changes occur.
     *
     * Operation response type: `google.protobuf.Empty`
     *
     * @deprecated
     * @generated from protobuf rpc: BatchEnableServices(google.api.serviceusage.v1beta1.BatchEnableServicesRequest) returns (google.longrunning.Operation);
     */
    batchEnableServices(input: BatchEnableServicesRequest, options?: RpcOptions): UnaryCall<BatchEnableServicesRequest, Operation>;
    /**
     * Retrieves a summary of all quota information visible to the service
     * consumer, organized by service metric. Each metric includes information
     * about all of its defined limits. Each limit includes the limit
     * configuration (quota unit, preciseness, default value), the current
     * effective limit value, and all of the overrides applied to the limit.
     *
     * @generated from protobuf rpc: ListConsumerQuotaMetrics(google.api.serviceusage.v1beta1.ListConsumerQuotaMetricsRequest) returns (google.api.serviceusage.v1beta1.ListConsumerQuotaMetricsResponse);
     */
    listConsumerQuotaMetrics(input: ListConsumerQuotaMetricsRequest, options?: RpcOptions): UnaryCall<ListConsumerQuotaMetricsRequest, ListConsumerQuotaMetricsResponse>;
    /**
     * Retrieves a summary of quota information for a specific quota metric
     *
     * @generated from protobuf rpc: GetConsumerQuotaMetric(google.api.serviceusage.v1beta1.GetConsumerQuotaMetricRequest) returns (google.api.serviceusage.v1beta1.ConsumerQuotaMetric);
     */
    getConsumerQuotaMetric(input: GetConsumerQuotaMetricRequest, options?: RpcOptions): UnaryCall<GetConsumerQuotaMetricRequest, ConsumerQuotaMetric>;
    /**
     * Retrieves a summary of quota information for a specific quota limit.
     *
     * @generated from protobuf rpc: GetConsumerQuotaLimit(google.api.serviceusage.v1beta1.GetConsumerQuotaLimitRequest) returns (google.api.serviceusage.v1beta1.ConsumerQuotaLimit);
     */
    getConsumerQuotaLimit(input: GetConsumerQuotaLimitRequest, options?: RpcOptions): UnaryCall<GetConsumerQuotaLimitRequest, ConsumerQuotaLimit>;
    /**
     * Creates an admin override.
     * An admin override is applied by an administrator of a parent folder or
     * parent organization of the consumer receiving the override. An admin
     * override is intended to limit the amount of quota the consumer can use out
     * of the total quota pool allocated to all children of the folder or
     * organization.
     *
     * @generated from protobuf rpc: CreateAdminOverride(google.api.serviceusage.v1beta1.CreateAdminOverrideRequest) returns (google.longrunning.Operation);
     */
    createAdminOverride(input: CreateAdminOverrideRequest, options?: RpcOptions): UnaryCall<CreateAdminOverrideRequest, Operation>;
    /**
     * Updates an admin override.
     *
     * @generated from protobuf rpc: UpdateAdminOverride(google.api.serviceusage.v1beta1.UpdateAdminOverrideRequest) returns (google.longrunning.Operation);
     */
    updateAdminOverride(input: UpdateAdminOverrideRequest, options?: RpcOptions): UnaryCall<UpdateAdminOverrideRequest, Operation>;
    /**
     * Deletes an admin override.
     *
     * @generated from protobuf rpc: DeleteAdminOverride(google.api.serviceusage.v1beta1.DeleteAdminOverrideRequest) returns (google.longrunning.Operation);
     */
    deleteAdminOverride(input: DeleteAdminOverrideRequest, options?: RpcOptions): UnaryCall<DeleteAdminOverrideRequest, Operation>;
    /**
     * Lists all admin overrides on this limit.
     *
     * @generated from protobuf rpc: ListAdminOverrides(google.api.serviceusage.v1beta1.ListAdminOverridesRequest) returns (google.api.serviceusage.v1beta1.ListAdminOverridesResponse);
     */
    listAdminOverrides(input: ListAdminOverridesRequest, options?: RpcOptions): UnaryCall<ListAdminOverridesRequest, ListAdminOverridesResponse>;
    /**
     * Creates or updates multiple admin overrides atomically, all on the
     * same consumer, but on many different metrics or limits.
     * The name field in the quota override message should not be set.
     *
     * @generated from protobuf rpc: ImportAdminOverrides(google.api.serviceusage.v1beta1.ImportAdminOverridesRequest) returns (google.longrunning.Operation);
     */
    importAdminOverrides(input: ImportAdminOverridesRequest, options?: RpcOptions): UnaryCall<ImportAdminOverridesRequest, Operation>;
    /**
     * Creates a consumer override.
     * A consumer override is applied to the consumer on its own authority to
     * limit its own quota usage. Consumer overrides cannot be used to grant more
     * quota than would be allowed by admin overrides, producer overrides, or the
     * default limit of the service.
     *
     * @generated from protobuf rpc: CreateConsumerOverride(google.api.serviceusage.v1beta1.CreateConsumerOverrideRequest) returns (google.longrunning.Operation);
     */
    createConsumerOverride(input: CreateConsumerOverrideRequest, options?: RpcOptions): UnaryCall<CreateConsumerOverrideRequest, Operation>;
    /**
     * Updates a consumer override.
     *
     * @generated from protobuf rpc: UpdateConsumerOverride(google.api.serviceusage.v1beta1.UpdateConsumerOverrideRequest) returns (google.longrunning.Operation);
     */
    updateConsumerOverride(input: UpdateConsumerOverrideRequest, options?: RpcOptions): UnaryCall<UpdateConsumerOverrideRequest, Operation>;
    /**
     * Deletes a consumer override.
     *
     * @generated from protobuf rpc: DeleteConsumerOverride(google.api.serviceusage.v1beta1.DeleteConsumerOverrideRequest) returns (google.longrunning.Operation);
     */
    deleteConsumerOverride(input: DeleteConsumerOverrideRequest, options?: RpcOptions): UnaryCall<DeleteConsumerOverrideRequest, Operation>;
    /**
     * Lists all consumer overrides on this limit.
     *
     * @generated from protobuf rpc: ListConsumerOverrides(google.api.serviceusage.v1beta1.ListConsumerOverridesRequest) returns (google.api.serviceusage.v1beta1.ListConsumerOverridesResponse);
     */
    listConsumerOverrides(input: ListConsumerOverridesRequest, options?: RpcOptions): UnaryCall<ListConsumerOverridesRequest, ListConsumerOverridesResponse>;
    /**
     * Creates or updates multiple consumer overrides atomically, all on the
     * same consumer, but on many different metrics or limits.
     * The name field in the quota override message should not be set.
     *
     * @generated from protobuf rpc: ImportConsumerOverrides(google.api.serviceusage.v1beta1.ImportConsumerOverridesRequest) returns (google.longrunning.Operation);
     */
    importConsumerOverrides(input: ImportConsumerOverridesRequest, options?: RpcOptions): UnaryCall<ImportConsumerOverridesRequest, Operation>;
    /**
     * Generates service identity for service.
     *
     * @generated from protobuf rpc: GenerateServiceIdentity(google.api.serviceusage.v1beta1.GenerateServiceIdentityRequest) returns (google.longrunning.Operation);
     */
    generateServiceIdentity(input: GenerateServiceIdentityRequest, options?: RpcOptions): UnaryCall<GenerateServiceIdentityRequest, Operation>;
}
