import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; import type { ReportResponse } from "./service_controller"; import type { ReportRequest } from "./service_controller"; import type { CheckResponse } from "./service_controller"; import type { CheckRequest } from "./service_controller"; import type { UnaryCall } from "@protobuf-ts/runtime-rpc"; import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; /** * [Google Service Control API](/service-control/overview) * * Lets clients check and report operations against a [managed * service](https://cloud.google.com/service-management/reference/rpc/google.api/servicemanagement.v1#google.api.servicemanagement.v1.ManagedService). * * @generated from protobuf service google.api.servicecontrol.v1.ServiceController */ export interface IServiceControllerClient { /** * Checks whether an operation on a service should be allowed to proceed * based on the configuration of the service and related policies. It must be * called before the operation is executed. * * If feasible, the client should cache the check results and reuse them for * 60 seconds. In case of any server errors, the client should rely on the * cached results for much longer time to avoid outage. * WARNING: There is general 60s delay for the configuration and policy * propagation, therefore callers MUST NOT depend on the `Check` method having * the latest policy information. * * NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has * the size limit (wire-format byte size) of 1MB. * * This method requires the `servicemanagement.services.check` permission * on the specified service. For more information, see * [Cloud IAM](https://cloud.google.com/iam). * * @generated from protobuf rpc: Check(google.api.servicecontrol.v1.CheckRequest) returns (google.api.servicecontrol.v1.CheckResponse); */ check(input: CheckRequest, options?: RpcOptions): UnaryCall; /** * Reports operation results to Google Service Control, such as logs and * metrics. It should be called after an operation is completed. * * If feasible, the client should aggregate reporting data for up to 5 * seconds to reduce API traffic. Limiting aggregation to 5 seconds is to * reduce data loss during client crashes. Clients should carefully choose * the aggregation time window to avoid data loss risk more than 0.01% * for business and compliance reasons. * * NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has * the size limit (wire-format byte size) of 1MB. * * This method requires the `servicemanagement.services.report` permission * on the specified service. For more information, see * [Google Cloud IAM](https://cloud.google.com/iam). * * @generated from protobuf rpc: Report(google.api.servicecontrol.v1.ReportRequest) returns (google.api.servicecontrol.v1.ReportResponse); */ report(input: ReportRequest, options?: RpcOptions): UnaryCall; } /** * [Google Service Control API](/service-control/overview) * * Lets clients check and report operations against a [managed * service](https://cloud.google.com/service-management/reference/rpc/google.api/servicemanagement.v1#google.api.servicemanagement.v1.ManagedService). * * @generated from protobuf service google.api.servicecontrol.v1.ServiceController */ export declare class ServiceControllerClient implements IServiceControllerClient, ServiceInfo { private readonly _transport; typeName: string; methods: import("@protobuf-ts/runtime-rpc").MethodInfo[]; options: { [extensionName: string]: import("@protobuf-ts/runtime").JsonValue; }; constructor(_transport: RpcTransport); /** * Checks whether an operation on a service should be allowed to proceed * based on the configuration of the service and related policies. It must be * called before the operation is executed. * * If feasible, the client should cache the check results and reuse them for * 60 seconds. In case of any server errors, the client should rely on the * cached results for much longer time to avoid outage. * WARNING: There is general 60s delay for the configuration and policy * propagation, therefore callers MUST NOT depend on the `Check` method having * the latest policy information. * * NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has * the size limit (wire-format byte size) of 1MB. * * This method requires the `servicemanagement.services.check` permission * on the specified service. For more information, see * [Cloud IAM](https://cloud.google.com/iam). * * @generated from protobuf rpc: Check(google.api.servicecontrol.v1.CheckRequest) returns (google.api.servicecontrol.v1.CheckResponse); */ check(input: CheckRequest, options?: RpcOptions): UnaryCall; /** * Reports operation results to Google Service Control, such as logs and * metrics. It should be called after an operation is completed. * * If feasible, the client should aggregate reporting data for up to 5 * seconds to reduce API traffic. Limiting aggregation to 5 seconds is to * reduce data loss during client crashes. Clients should carefully choose * the aggregation time window to avoid data loss risk more than 0.01% * for business and compliance reasons. * * NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has * the size limit (wire-format byte size) of 1MB. * * This method requires the `servicemanagement.services.report` permission * on the specified service. For more information, see * [Google Cloud IAM](https://cloud.google.com/iam). * * @generated from protobuf rpc: Report(google.api.servicecontrol.v1.ReportRequest) returns (google.api.servicecontrol.v1.ReportResponse); */ report(input: ReportRequest, options?: RpcOptions): UnaryCall; }