// @generated by protobuf-ts 2.9.6
// @generated from protobuf file "claim-type.proto" (package "api", syntax proto3)
// tslint:disable
import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
import { ClaimTypeService } from "./claim-type";
import type { DeleteClaimTypesForProjectResponse } from "./claim-type";
import type { DeleteClaimTypesForProjectRequest } from "./claim-type";
import type { DeleteClaimTypeResponse } from "./claim-type";
import type { DeleteClaimTypeRequest } from "./claim-type";
import type { UpdateClaimTypeResponse } from "./claim-type";
import type { UpdateClaimTypeRequest } from "./claim-type";
import type { ListClaimTypeResponse } from "./claim-type";
import type { ListClaimTypeRequest } from "./claim-type";
import type { GetClaimTypeResponse } from "./claim-type";
import type { GetClaimTypeRequest } from "./claim-type";
import { stackIntercept } from "@protobuf-ts/runtime-rpc";
import type { CreateClaimTypeResponse } from "./claim-type";
import type { CreateClaimTypeRequest } from "./claim-type";
import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
/**
 * @generated from protobuf service api.ClaimTypeService
 */
export interface IClaimTypeServiceClient {
    /**
     * @generated from protobuf rpc: Create(api.CreateClaimTypeRequest) returns (api.CreateClaimTypeResponse);
     */
    create(input: CreateClaimTypeRequest, options?: RpcOptions): UnaryCall<CreateClaimTypeRequest, CreateClaimTypeResponse>;
    /**
     * @generated from protobuf rpc: Get(api.GetClaimTypeRequest) returns (api.GetClaimTypeResponse);
     */
    get(input: GetClaimTypeRequest, options?: RpcOptions): UnaryCall<GetClaimTypeRequest, GetClaimTypeResponse>;
    /**
     * @generated from protobuf rpc: List(api.ListClaimTypeRequest) returns (api.ListClaimTypeResponse);
     */
    list(input: ListClaimTypeRequest, options?: RpcOptions): UnaryCall<ListClaimTypeRequest, ListClaimTypeResponse>;
    /**
     * @generated from protobuf rpc: Update(api.UpdateClaimTypeRequest) returns (api.UpdateClaimTypeResponse);
     */
    update(input: UpdateClaimTypeRequest, options?: RpcOptions): UnaryCall<UpdateClaimTypeRequest, UpdateClaimTypeResponse>;
    /**
     * @generated from protobuf rpc: Delete(api.DeleteClaimTypeRequest) returns (api.DeleteClaimTypeResponse);
     */
    delete(input: DeleteClaimTypeRequest, options?: RpcOptions): UnaryCall<DeleteClaimTypeRequest, DeleteClaimTypeResponse>;
    /**
     * @generated from protobuf rpc: DeleteClaimTypesForProject(api.DeleteClaimTypesForProjectRequest) returns (api.DeleteClaimTypesForProjectResponse);
     */
    deleteClaimTypesForProject(input: DeleteClaimTypesForProjectRequest, options?: RpcOptions): UnaryCall<DeleteClaimTypesForProjectRequest, DeleteClaimTypesForProjectResponse>;
}
/**
 * @generated from protobuf service api.ClaimTypeService
 */
export class ClaimTypeServiceClient implements IClaimTypeServiceClient, ServiceInfo {
    typeName = ClaimTypeService.typeName;
    methods = ClaimTypeService.methods;
    options = ClaimTypeService.options;
    constructor(private readonly _transport: RpcTransport) {
    }
    /**
     * @generated from protobuf rpc: Create(api.CreateClaimTypeRequest) returns (api.CreateClaimTypeResponse);
     */
    create(input: CreateClaimTypeRequest, options?: RpcOptions): UnaryCall<CreateClaimTypeRequest, CreateClaimTypeResponse> {
        const method = this.methods[0], opt = this._transport.mergeOptions(options);
        return stackIntercept<CreateClaimTypeRequest, CreateClaimTypeResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: Get(api.GetClaimTypeRequest) returns (api.GetClaimTypeResponse);
     */
    get(input: GetClaimTypeRequest, options?: RpcOptions): UnaryCall<GetClaimTypeRequest, GetClaimTypeResponse> {
        const method = this.methods[1], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetClaimTypeRequest, GetClaimTypeResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: List(api.ListClaimTypeRequest) returns (api.ListClaimTypeResponse);
     */
    list(input: ListClaimTypeRequest, options?: RpcOptions): UnaryCall<ListClaimTypeRequest, ListClaimTypeResponse> {
        const method = this.methods[2], opt = this._transport.mergeOptions(options);
        return stackIntercept<ListClaimTypeRequest, ListClaimTypeResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: Update(api.UpdateClaimTypeRequest) returns (api.UpdateClaimTypeResponse);
     */
    update(input: UpdateClaimTypeRequest, options?: RpcOptions): UnaryCall<UpdateClaimTypeRequest, UpdateClaimTypeResponse> {
        const method = this.methods[3], opt = this._transport.mergeOptions(options);
        return stackIntercept<UpdateClaimTypeRequest, UpdateClaimTypeResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: Delete(api.DeleteClaimTypeRequest) returns (api.DeleteClaimTypeResponse);
     */
    delete(input: DeleteClaimTypeRequest, options?: RpcOptions): UnaryCall<DeleteClaimTypeRequest, DeleteClaimTypeResponse> {
        const method = this.methods[4], opt = this._transport.mergeOptions(options);
        return stackIntercept<DeleteClaimTypeRequest, DeleteClaimTypeResponse>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: DeleteClaimTypesForProject(api.DeleteClaimTypesForProjectRequest) returns (api.DeleteClaimTypesForProjectResponse);
     */
    deleteClaimTypesForProject(input: DeleteClaimTypesForProjectRequest, options?: RpcOptions): UnaryCall<DeleteClaimTypesForProjectRequest, DeleteClaimTypesForProjectResponse> {
        const method = this.methods[5], opt = this._transport.mergeOptions(options);
        return stackIntercept<DeleteClaimTypesForProjectRequest, DeleteClaimTypesForProjectResponse>("unary", this._transport, method, opt, input);
    }
}
