import { ServiceType } from "@protobuf-ts/runtime-rpc"; import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; import type { IBinaryWriter } from "@protobuf-ts/runtime"; import type { BinaryReadOptions } from "@protobuf-ts/runtime"; import type { IBinaryReader } from "@protobuf-ts/runtime"; import type { PartialMessage } from "@protobuf-ts/runtime"; import { MessageType } from "@protobuf-ts/runtime"; import { Status } from "../../../rpc/status"; import { AttributeContext } from "../../../rpc/context/attribute_context"; /** * Request message for the Check method. * * @generated from protobuf message google.api.servicecontrol.v2.CheckRequest */ export interface CheckRequest { /** * The service name as specified in its service configuration. For example, * `"pubsub.googleapis.com"`. * * See * [google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service) * for the definition of a service name. * * @generated from protobuf field: string service_name = 1; */ serviceName: string; /** * Specifies the version of the service configuration that should be used to * process the request. Must not be empty. Set this field to 'latest' to * specify using the latest configuration. * * @generated from protobuf field: string service_config_id = 2; */ serviceConfigId: string; /** * Describes attributes about the operation being executed by the service. * * @generated from protobuf field: google.rpc.context.AttributeContext attributes = 3; */ attributes?: AttributeContext; /** * Describes the resources and the policies applied to each resource. * * @generated from protobuf field: repeated google.api.servicecontrol.v2.ResourceInfo resources = 4; */ resources: ResourceInfo[]; /** * Optional. Contains a comma-separated list of flags. * * @generated from protobuf field: string flags = 5; */ flags: string; } /** * Describes a resource referenced in the request. * * @generated from protobuf message google.api.servicecontrol.v2.ResourceInfo */ export interface ResourceInfo { /** * The name of the resource referenced in the request. * * @generated from protobuf field: string name = 1; */ name: string; /** * The resource type in the format of "{service}/{kind}". * * @generated from protobuf field: string type = 2; */ type: string; /** * The resource permission needed for this request. * The format must be "{service}/{plural}.{verb}". * * @generated from protobuf field: string permission = 3; */ permission: string; /** * Optional. The identifier of the container of this resource. For Google * Cloud APIs, the resource container must be one of the following formats: * - `projects/` * - `folders/` * - `organizations/` * For the policy enforcement on the container level (VPCSC and Location * Policy check), this field takes precedence on the container extracted from * name when presents. * * @generated from protobuf field: string container = 4; */ container: string; /** * Optional. The location of the resource. The value must be a valid zone, * region or multiregion. For example: "europe-west4" or * "northamerica-northeast1-a" * * @generated from protobuf field: string location = 5; */ location: string; } /** * Response message for the Check method. * * @generated from protobuf message google.api.servicecontrol.v2.CheckResponse */ export interface CheckResponse { /** * Operation is allowed when this field is not set. Any non-'OK' status * indicates a denial; [google.rpc.Status.details][google.rpc.Status.details] * would contain additional details about the denial. * * @generated from protobuf field: google.rpc.Status status = 1; */ status?: Status; /** * Returns a set of request contexts generated from the `CheckRequest`. * * @generated from protobuf field: map headers = 2; */ headers: { [key: string]: string; }; } /** * Request message for the Report method. * * @generated from protobuf message google.api.servicecontrol.v2.ReportRequest */ export interface ReportRequest { /** * The service name as specified in its service configuration. For example, * `"pubsub.googleapis.com"`. * * See * [google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service) * for the definition of a service name. * * @generated from protobuf field: string service_name = 1; */ serviceName: string; /** * Specifies the version of the service configuration that should be used to * process the request. Must not be empty. Set this field to 'latest' to * specify using the latest configuration. * * @generated from protobuf field: string service_config_id = 2; */ serviceConfigId: string; /** * Describes the list of operations to be reported. Each operation is * represented as an AttributeContext, and contains all attributes around an * API access. * * @generated from protobuf field: repeated google.rpc.context.AttributeContext operations = 3; */ operations: AttributeContext[]; } /** * Response message for the Report method. * If the request contains any invalid data, the server returns an RPC error. * * @generated from protobuf message google.api.servicecontrol.v2.ReportResponse */ export interface ReportResponse { } declare class CheckRequest$Type extends MessageType { constructor(); create(value?: PartialMessage): CheckRequest; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CheckRequest): CheckRequest; internalBinaryWrite(message: CheckRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.api.servicecontrol.v2.CheckRequest */ export declare const CheckRequest: CheckRequest$Type; declare class ResourceInfo$Type extends MessageType { constructor(); create(value?: PartialMessage): ResourceInfo; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResourceInfo): ResourceInfo; internalBinaryWrite(message: ResourceInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.api.servicecontrol.v2.ResourceInfo */ export declare const ResourceInfo: ResourceInfo$Type; declare class CheckResponse$Type extends MessageType { constructor(); create(value?: PartialMessage): CheckResponse; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CheckResponse): CheckResponse; private binaryReadMap2; internalBinaryWrite(message: CheckResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.api.servicecontrol.v2.CheckResponse */ export declare const CheckResponse: CheckResponse$Type; declare class ReportRequest$Type extends MessageType { constructor(); create(value?: PartialMessage): ReportRequest; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ReportRequest): ReportRequest; internalBinaryWrite(message: ReportRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.api.servicecontrol.v2.ReportRequest */ export declare const ReportRequest: ReportRequest$Type; declare class ReportResponse$Type extends MessageType { constructor(); create(value?: PartialMessage): ReportResponse; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ReportResponse): ReportResponse; internalBinaryWrite(message: ReportResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.api.servicecontrol.v2.ReportResponse */ export declare const ReportResponse: ReportResponse$Type; /** * @generated ServiceType for protobuf service google.api.servicecontrol.v2.ServiceController */ export declare const ServiceController: ServiceType; export {};