// @generated by protobuf-ts 2.9.6
// @generated from protobuf file "kpi.proto" (package "api", syntax proto3)
// tslint:disable
import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
import { KpiService } from "./kpi";
import type { PopulateMVResult } from "./kpi";
import type { PopulateMVRequest } from "./kpi";
import type { DropMVResult } from "./kpi";
import type { DropMVRequest } from "./kpi";
import type { CreateMVResult } from "./kpi";
import type { CreateMVRequest } from "./kpi";
import type { ClearKpiEntityResult } from "./kpi";
import type { ClearKpiEntityRequest } from "./kpi";
import type { GetKpiEntitiesResult } from "./kpi";
import type { GetKpiEntitiesRequest } from "./kpi";
import type { UpdateKpiTableStructureResult } from "./kpi";
import type { UpdateKpiTableStructureRequest } from "./kpi";
import type { GetKpiTableStructureResult } from "./kpi";
import type { GetKpiTableStructureRequest } from "./kpi";
import { stackIntercept } from "@protobuf-ts/runtime-rpc";
import type { GetKpisResult } from "./kpi";
import type { GetKpisRequest } from "./kpi";
import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
/**
 * @generated from protobuf service api.KpiService
 */
export interface IKpiServiceClient {
    /**
     * @generated from protobuf rpc: GetKpis(api.GetKpisRequest) returns (api.GetKpisResult);
     */
    getKpis(input: GetKpisRequest, options?: RpcOptions): UnaryCall<GetKpisRequest, GetKpisResult>;
    /**
     * @generated from protobuf rpc: GetKpiTableStructure(api.GetKpiTableStructureRequest) returns (api.GetKpiTableStructureResult);
     */
    getKpiTableStructure(input: GetKpiTableStructureRequest, options?: RpcOptions): UnaryCall<GetKpiTableStructureRequest, GetKpiTableStructureResult>;
    /**
     * @generated from protobuf rpc: UpdateKpiTableStructure(api.UpdateKpiTableStructureRequest) returns (api.UpdateKpiTableStructureResult);
     */
    updateKpiTableStructure(input: UpdateKpiTableStructureRequest, options?: RpcOptions): UnaryCall<UpdateKpiTableStructureRequest, UpdateKpiTableStructureResult>;
    /**
     * @generated from protobuf rpc: GetKpiEntities(api.GetKpiEntitiesRequest) returns (api.GetKpiEntitiesResult);
     */
    getKpiEntities(input: GetKpiEntitiesRequest, options?: RpcOptions): UnaryCall<GetKpiEntitiesRequest, GetKpiEntitiesResult>;
    /**
     * @generated from protobuf rpc: ClearKpiEntity(api.ClearKpiEntityRequest) returns (api.ClearKpiEntityResult);
     */
    clearKpiEntity(input: ClearKpiEntityRequest, options?: RpcOptions): UnaryCall<ClearKpiEntityRequest, ClearKpiEntityResult>;
    /**
     * @generated from protobuf rpc: CreateMV(api.CreateMVRequest) returns (api.CreateMVResult);
     */
    createMV(input: CreateMVRequest, options?: RpcOptions): UnaryCall<CreateMVRequest, CreateMVResult>;
    /**
     * @generated from protobuf rpc: DropMV(api.DropMVRequest) returns (api.DropMVResult);
     */
    dropMV(input: DropMVRequest, options?: RpcOptions): UnaryCall<DropMVRequest, DropMVResult>;
    /**
     * @generated from protobuf rpc: PopulateMV(api.PopulateMVRequest) returns (api.PopulateMVResult);
     */
    populateMV(input: PopulateMVRequest, options?: RpcOptions): UnaryCall<PopulateMVRequest, PopulateMVResult>;
}
/**
 * @generated from protobuf service api.KpiService
 */
export class KpiServiceClient implements IKpiServiceClient, ServiceInfo {
    typeName = KpiService.typeName;
    methods = KpiService.methods;
    options = KpiService.options;
    constructor(private readonly _transport: RpcTransport) {
    }
    /**
     * @generated from protobuf rpc: GetKpis(api.GetKpisRequest) returns (api.GetKpisResult);
     */
    getKpis(input: GetKpisRequest, options?: RpcOptions): UnaryCall<GetKpisRequest, GetKpisResult> {
        const method = this.methods[0], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetKpisRequest, GetKpisResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetKpiTableStructure(api.GetKpiTableStructureRequest) returns (api.GetKpiTableStructureResult);
     */
    getKpiTableStructure(input: GetKpiTableStructureRequest, options?: RpcOptions): UnaryCall<GetKpiTableStructureRequest, GetKpiTableStructureResult> {
        const method = this.methods[1], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetKpiTableStructureRequest, GetKpiTableStructureResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: UpdateKpiTableStructure(api.UpdateKpiTableStructureRequest) returns (api.UpdateKpiTableStructureResult);
     */
    updateKpiTableStructure(input: UpdateKpiTableStructureRequest, options?: RpcOptions): UnaryCall<UpdateKpiTableStructureRequest, UpdateKpiTableStructureResult> {
        const method = this.methods[2], opt = this._transport.mergeOptions(options);
        return stackIntercept<UpdateKpiTableStructureRequest, UpdateKpiTableStructureResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetKpiEntities(api.GetKpiEntitiesRequest) returns (api.GetKpiEntitiesResult);
     */
    getKpiEntities(input: GetKpiEntitiesRequest, options?: RpcOptions): UnaryCall<GetKpiEntitiesRequest, GetKpiEntitiesResult> {
        const method = this.methods[3], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetKpiEntitiesRequest, GetKpiEntitiesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ClearKpiEntity(api.ClearKpiEntityRequest) returns (api.ClearKpiEntityResult);
     */
    clearKpiEntity(input: ClearKpiEntityRequest, options?: RpcOptions): UnaryCall<ClearKpiEntityRequest, ClearKpiEntityResult> {
        const method = this.methods[4], opt = this._transport.mergeOptions(options);
        return stackIntercept<ClearKpiEntityRequest, ClearKpiEntityResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: CreateMV(api.CreateMVRequest) returns (api.CreateMVResult);
     */
    createMV(input: CreateMVRequest, options?: RpcOptions): UnaryCall<CreateMVRequest, CreateMVResult> {
        const method = this.methods[5], opt = this._transport.mergeOptions(options);
        return stackIntercept<CreateMVRequest, CreateMVResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: DropMV(api.DropMVRequest) returns (api.DropMVResult);
     */
    dropMV(input: DropMVRequest, options?: RpcOptions): UnaryCall<DropMVRequest, DropMVResult> {
        const method = this.methods[6], opt = this._transport.mergeOptions(options);
        return stackIntercept<DropMVRequest, DropMVResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: PopulateMV(api.PopulateMVRequest) returns (api.PopulateMVResult);
     */
    populateMV(input: PopulateMVRequest, options?: RpcOptions): UnaryCall<PopulateMVRequest, PopulateMVResult> {
        const method = this.methods[7], opt = this._transport.mergeOptions(options);
        return stackIntercept<PopulateMVRequest, PopulateMVResult>("unary", this._transport, method, opt, input);
    }
}
