// @generated by protobuf-ts 2.9.6
// @generated from protobuf file "stockQuery.proto" (package "api", syntax proto3)
// tslint:disable
import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
import { StockQuery } from "./stockQuery";
import type { FindKPIDataResult } from "./clickhouse";
import type { FindKPIDataQuery } from "./clickhouse";
import type { CountLinesResult } from "./shared";
import type { CountLinesQuery } from "./shared";
import type { ExtractKPIResult } from "./clickhouse";
import type { ExtractKPIQuery } from "./clickhouse";
import type { GetKPIDataForUserQuery } from "./clickhouse";
import type { GetKPIDataResult } from "./clickhouse";
import type { GetKPIDataQuery } from "./clickhouse";
import type { ElementByMatchResult } from "./shared";
import type { ElementByMatchQuery } from "./shared";
import type { StockByMatchResult } from "./stockQuery";
import type { StockByMatchQuery } from "./stockQuery";
import type { StockByFilterResult } from "./stockQuery";
import type { StockByFilterQuery } from "./stockQuery";
import { stackIntercept } from "@protobuf-ts/runtime-rpc";
import type { StockByIdResult } from "./stockQuery";
import type { StockByIdQuery } from "./stockQuery";
import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
/**
 *
 * Stock cannot be queried using id because the id is generated and not publicly-known.
 * Stock is only queryable by expressing conditions on Goods 'key' attributes (itemID, LVBranchID, PriorityDate and SegmentationKeys) and the ActorID.
 *
 * @generated from protobuf service api.StockQuery
 */
export interface IStockQueryClient {
    /**
     * @deprecated
     * @generated from protobuf rpc: GetByIds(api.StockByIdQuery) returns (api.StockByIdResult);
     */
    getByIds(input: StockByIdQuery, options?: RpcOptions): UnaryCall<StockByIdQuery, StockByIdResult>;
    /**
     * @deprecated
     * @generated from protobuf rpc: Find(api.StockByFilterQuery) returns (api.StockByFilterResult);
     */
    find(input: StockByFilterQuery, options?: RpcOptions): UnaryCall<StockByFilterQuery, StockByFilterResult>;
    /**
     * @generated from protobuf rpc: FindMatchingFieldValues(api.StockByMatchQuery) returns (api.StockByMatchResult);
     */
    findMatchingFieldValues(input: StockByMatchQuery, options?: RpcOptions): UnaryCall<StockByMatchQuery, StockByMatchResult>;
    /**
     * @generated from protobuf rpc: FindMatchingFieldElements(api.ElementByMatchQuery) returns (api.ElementByMatchResult);
     */
    findMatchingFieldElements(input: ElementByMatchQuery, options?: RpcOptions): UnaryCall<ElementByMatchQuery, ElementByMatchResult>;
    /**
     * @generated from protobuf rpc: GetKPIData(api.GetKPIDataQuery) returns (api.GetKPIDataResult);
     */
    getKPIData(input: GetKPIDataQuery, options?: RpcOptions): UnaryCall<GetKPIDataQuery, GetKPIDataResult>;
    /**
     * @generated from protobuf rpc: GetKPIDataForUser(api.GetKPIDataForUserQuery) returns (api.GetKPIDataResult);
     */
    getKPIDataForUser(input: GetKPIDataForUserQuery, options?: RpcOptions): UnaryCall<GetKPIDataForUserQuery, GetKPIDataResult>;
    /**
     * @generated from protobuf rpc: ExtractKPI(api.ExtractKPIQuery) returns (api.ExtractKPIResult);
     */
    extractKPI(input: ExtractKPIQuery, options?: RpcOptions): UnaryCall<ExtractKPIQuery, ExtractKPIResult>;
    /**
     * @generated from protobuf rpc: CountLines(api.CountLinesQuery) returns (api.CountLinesResult);
     */
    countLines(input: CountLinesQuery, options?: RpcOptions): UnaryCall<CountLinesQuery, CountLinesResult>;
    /**
     * @generated from protobuf rpc: FindKPIData(api.FindKPIDataQuery) returns (api.FindKPIDataResult);
     */
    findKPIData(input: FindKPIDataQuery, options?: RpcOptions): UnaryCall<FindKPIDataQuery, FindKPIDataResult>;
}
/**
 *
 * Stock cannot be queried using id because the id is generated and not publicly-known.
 * Stock is only queryable by expressing conditions on Goods 'key' attributes (itemID, LVBranchID, PriorityDate and SegmentationKeys) and the ActorID.
 *
 * @generated from protobuf service api.StockQuery
 */
export class StockQueryClient implements IStockQueryClient, ServiceInfo {
    typeName = StockQuery.typeName;
    methods = StockQuery.methods;
    options = StockQuery.options;
    constructor(private readonly _transport: RpcTransport) {
    }
    /**
     * @deprecated
     * @generated from protobuf rpc: GetByIds(api.StockByIdQuery) returns (api.StockByIdResult);
     */
    getByIds(input: StockByIdQuery, options?: RpcOptions): UnaryCall<StockByIdQuery, StockByIdResult> {
        const method = this.methods[0], opt = this._transport.mergeOptions(options);
        return stackIntercept<StockByIdQuery, StockByIdResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @deprecated
     * @generated from protobuf rpc: Find(api.StockByFilterQuery) returns (api.StockByFilterResult);
     */
    find(input: StockByFilterQuery, options?: RpcOptions): UnaryCall<StockByFilterQuery, StockByFilterResult> {
        const method = this.methods[1], opt = this._transport.mergeOptions(options);
        return stackIntercept<StockByFilterQuery, StockByFilterResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: FindMatchingFieldValues(api.StockByMatchQuery) returns (api.StockByMatchResult);
     */
    findMatchingFieldValues(input: StockByMatchQuery, options?: RpcOptions): UnaryCall<StockByMatchQuery, StockByMatchResult> {
        const method = this.methods[2], opt = this._transport.mergeOptions(options);
        return stackIntercept<StockByMatchQuery, StockByMatchResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: FindMatchingFieldElements(api.ElementByMatchQuery) returns (api.ElementByMatchResult);
     */
    findMatchingFieldElements(input: ElementByMatchQuery, options?: RpcOptions): UnaryCall<ElementByMatchQuery, ElementByMatchResult> {
        const method = this.methods[3], opt = this._transport.mergeOptions(options);
        return stackIntercept<ElementByMatchQuery, ElementByMatchResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetKPIData(api.GetKPIDataQuery) returns (api.GetKPIDataResult);
     */
    getKPIData(input: GetKPIDataQuery, options?: RpcOptions): UnaryCall<GetKPIDataQuery, GetKPIDataResult> {
        const method = this.methods[4], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetKPIDataQuery, GetKPIDataResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: GetKPIDataForUser(api.GetKPIDataForUserQuery) returns (api.GetKPIDataResult);
     */
    getKPIDataForUser(input: GetKPIDataForUserQuery, options?: RpcOptions): UnaryCall<GetKPIDataForUserQuery, GetKPIDataResult> {
        const method = this.methods[5], opt = this._transport.mergeOptions(options);
        return stackIntercept<GetKPIDataForUserQuery, GetKPIDataResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: ExtractKPI(api.ExtractKPIQuery) returns (api.ExtractKPIResult);
     */
    extractKPI(input: ExtractKPIQuery, options?: RpcOptions): UnaryCall<ExtractKPIQuery, ExtractKPIResult> {
        const method = this.methods[6], opt = this._transport.mergeOptions(options);
        return stackIntercept<ExtractKPIQuery, ExtractKPIResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: CountLines(api.CountLinesQuery) returns (api.CountLinesResult);
     */
    countLines(input: CountLinesQuery, options?: RpcOptions): UnaryCall<CountLinesQuery, CountLinesResult> {
        const method = this.methods[7], opt = this._transport.mergeOptions(options);
        return stackIntercept<CountLinesQuery, CountLinesResult>("unary", this._transport, method, opt, input);
    }
    /**
     * @generated from protobuf rpc: FindKPIData(api.FindKPIDataQuery) returns (api.FindKPIDataResult);
     */
    findKPIData(input: FindKPIDataQuery, options?: RpcOptions): UnaryCall<FindKPIDataQuery, FindKPIDataResult> {
        const method = this.methods[8], opt = this._transport.mergeOptions(options);
        return stackIntercept<FindKPIDataQuery, FindKPIDataResult>("unary", this._transport, method, opt, input);
    }
}
