// @generated by protobuf-ts 2.9.6
// @generated from protobuf file "gcs-api.proto" (package "api", syntax proto3)
// tslint:disable
import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
import { GcsApi } from "./gcs-api";
import type { DeleteOrganisationBucketRequest } from "./gcs-api";
import type { DeleteProjectBucketRequest } from "./gcs-api";
import type { DeleteBucketResult } from "./gcs-api";
import type { DeletePartnerBucketRequest } from "./gcs-api";
import type { CreateProjectBucketRequest } from "./gcs-api";
import type { CreateBucketResult } from "./gcs-api";
import type { CreatePartnerBucketRequest } from "./gcs-api";
import type { GetBucketSTSResult } from "./gcs-api";
import type { GetBucketSTSRequest } from "./gcs-api";
import type { GetProjectWriteTokenResult } from "./gcs-api";
import type { GetProjectWriteTokenRequest } from "./gcs-api";
import type { GetProjectReadTokenResult } from "./gcs-api";
import type { GetProjectReadTokenRequest } from "./gcs-api";
import type { GetPartnerWriteTokenResult } from "./gcs-api";
import type { GetPartnerWriteTokenRequest } from "./gcs-api";
import { stackIntercept } from "@protobuf-ts/runtime-rpc";
import type { GetPartnerReadTokenResult } from "./gcs-api";
import type { GetPartnerReadTokenRequest } from "./gcs-api";
import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
/**
 * @generated from protobuf service api.GcsApi
 */
export interface IGcsApiClient {
    /**
     * @generated from protobuf rpc: GetPartnerReadToken(api.GetPartnerReadTokenRequest) returns (api.GetPartnerReadTokenResult);
     */
    getPartnerReadToken(input: GetPartnerReadTokenRequest, options?: RpcOptions): UnaryCall<GetPartnerReadTokenRequest, GetPartnerReadTokenResult>;
    /**
     * @generated from protobuf rpc: GetPartnerWriteToken(api.GetPartnerWriteTokenRequest) returns (api.GetPartnerWriteTokenResult);
     */
    getPartnerWriteToken(input: GetPartnerWriteTokenRequest, options?: RpcOptions): UnaryCall<GetPartnerWriteTokenRequest, GetPartnerWriteTokenResult>;
    /**
     * @generated from protobuf rpc: GetProjectReadToken(api.GetProjectReadTokenRequest) returns (api.GetProjectReadTokenResult);
     */
    getProjectReadToken(input: GetProjectReadTokenRequest, options?: RpcOptions): UnaryCall<GetProjectReadTokenRequest, GetProjectReadTokenResult>;
    /**
     * @generated from protobuf rpc: GetProjectWriteToken(api.GetProjectWriteTokenRequest) returns (api.GetProjectWriteTokenResult);
     */
    getProjectWriteToken(input: GetProjectWriteTokenRequest, options?: RpcOptions): UnaryCall<GetProjectWriteTokenRequest, GetProjectWriteTokenResult>;
    /**
     * @generated from protobuf rpc: GetBucketSTS(api.GetBucketSTSRequest) returns (api.GetBucketSTSResult);
     */
    getBucketSTS(input: GetBucketSTSRequest, options?: RpcOptions): UnaryCall<GetBucketSTSRequest, GetBucketSTSResult>;
    /**
     * @generated from protobuf rpc: CreatePartnerBucket(api.CreatePartnerBucketRequest) returns (api.CreateBucketResult);
     */
    createPartnerBucket(input: CreatePartnerBucketRequest, options?: RpcOptions): UnaryCall<CreatePartnerBucketRequest, CreateBucketResult>;
    /**
     * @generated from protobuf rpc: CreateProjectBucket(api.CreateProjectBucketRequest) returns (api.CreateBucketResult);
     */
    createProjectBucket(input: CreateProjectBucketRequest, options?: RpcOptions): UnaryCall<CreateProjectBucketRequest, CreateBucketResult>;
    /**
     * @generated from protobuf rpc: DeletePartnerBucket(api.DeletePartnerBucketRequest) returns (api.DeleteBucketResult);
     */
    deletePartnerBucket(input: DeletePartnerBucketRequest, options?: RpcOptions): UnaryCall<DeletePartnerBucketRequest, DeleteBucketResult>;
    /**
     * @generated from protobuf rpc: DeleteProjectBucket(api.DeleteProjectBucketRequest) returns (api.DeleteBucketResult);
     */
    deleteProjectBucket(input: DeleteProjectBucketRequest, options?: RpcOptions): UnaryCall<DeleteProjectBucketRequest, DeleteBucketResult>;
    /**
     * @generated from protobuf rpc: DeleteOrganisationBucket(api.DeleteOrganisationBucketRequest) returns (api.DeleteBucketResult);
     */
    deleteOrganisationBucket(input: DeleteOrganisationBucketRequest, options?: RpcOptions): UnaryCall<DeleteOrganisationBucketRequest, DeleteBucketResult>;
}
/**
 * @generated from protobuf service api.GcsApi
 */
export class GcsApiClient implements IGcsApiClient, ServiceInfo {
    typeName = GcsApi.typeName;
    methods = GcsApi.methods;
    options = GcsApi.options;
    constructor(private readonly _transport: RpcTransport) {
    }
    /**
     * @generated from protobuf rpc: GetPartnerReadToken(api.GetPartnerReadTokenRequest) returns (api.GetPartnerReadTokenResult);
     */
    getPartnerReadToken(input: GetPartnerReadTokenRequest, options?: RpcOptions): UnaryCall<GetPartnerReadTokenRequest, GetPartnerReadTokenResult> {
        const method = this.methods[0], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetPartnerReadTokenRequest, GetPartnerReadTokenResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetPartnerWriteToken(api.GetPartnerWriteTokenRequest) returns (api.GetPartnerWriteTokenResult);
     */
    getPartnerWriteToken(input: GetPartnerWriteTokenRequest, options?: RpcOptions): UnaryCall<GetPartnerWriteTokenRequest, GetPartnerWriteTokenResult> {
        const method = this.methods[1], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetPartnerWriteTokenRequest, GetPartnerWriteTokenResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetProjectReadToken(api.GetProjectReadTokenRequest) returns (api.GetProjectReadTokenResult);
     */
    getProjectReadToken(input: GetProjectReadTokenRequest, options?: RpcOptions): UnaryCall<GetProjectReadTokenRequest, GetProjectReadTokenResult> {
        const method = this.methods[2], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetProjectReadTokenRequest, GetProjectReadTokenResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetProjectWriteToken(api.GetProjectWriteTokenRequest) returns (api.GetProjectWriteTokenResult);
     */
    getProjectWriteToken(input: GetProjectWriteTokenRequest, options?: RpcOptions): UnaryCall<GetProjectWriteTokenRequest, GetProjectWriteTokenResult> {
        const method = this.methods[3], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetProjectWriteTokenRequest, GetProjectWriteTokenResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetBucketSTS(api.GetBucketSTSRequest) returns (api.GetBucketSTSResult);
     */
    getBucketSTS(input: GetBucketSTSRequest, options?: RpcOptions): UnaryCall<GetBucketSTSRequest, GetBucketSTSResult> {
        const method = this.methods[4], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetBucketSTSRequest, GetBucketSTSResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: CreatePartnerBucket(api.CreatePartnerBucketRequest) returns (api.CreateBucketResult);
     */
    createPartnerBucket(input: CreatePartnerBucketRequest, options?: RpcOptions): UnaryCall<CreatePartnerBucketRequest, CreateBucketResult> {
        const method = this.methods[5], opt = this._transport.mergeOptions(options);
        return stackIntercept<CreatePartnerBucketRequest, CreateBucketResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: CreateProjectBucket(api.CreateProjectBucketRequest) returns (api.CreateBucketResult);
     */
    createProjectBucket(input: CreateProjectBucketRequest, options?: RpcOptions): UnaryCall<CreateProjectBucketRequest, CreateBucketResult> {
        const method = this.methods[6], opt = this._transport.mergeOptions(options);
        return stackIntercept<CreateProjectBucketRequest, CreateBucketResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: DeletePartnerBucket(api.DeletePartnerBucketRequest) returns (api.DeleteBucketResult);
     */
    deletePartnerBucket(input: DeletePartnerBucketRequest, options?: RpcOptions): UnaryCall<DeletePartnerBucketRequest, DeleteBucketResult> {
        const method = this.methods[7], opt = this._transport.mergeOptions(options);
        return stackIntercept<DeletePartnerBucketRequest, DeleteBucketResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: DeleteProjectBucket(api.DeleteProjectBucketRequest) returns (api.DeleteBucketResult);
     */
    deleteProjectBucket(input: DeleteProjectBucketRequest, options?: RpcOptions): UnaryCall<DeleteProjectBucketRequest, DeleteBucketResult> {
        const method = this.methods[8], opt = this._transport.mergeOptions(options);
        return stackIntercept<DeleteProjectBucketRequest, DeleteBucketResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: DeleteOrganisationBucket(api.DeleteOrganisationBucketRequest) returns (api.DeleteBucketResult);
     */
    deleteOrganisationBucket(input: DeleteOrganisationBucketRequest, options?: RpcOptions): UnaryCall<DeleteOrganisationBucketRequest, DeleteBucketResult> {
        const method = this.methods[9], opt = this._transport.mergeOptions(options);
        return stackIntercept<DeleteOrganisationBucketRequest, DeleteBucketResult>("unary", this._transport, method, opt, input);
    }
}
