import CoreStitchServiceClient from "./CoreStitchServiceClient";
import StitchServiceRoutes from "./StitchServiceRoutes";
import StitchAuthRequestClient from "../../auth/internal/StitchAuthRequestClient";
import { Decoder } from "../../internal/common/Codec";
import Stream from "../../internal/net/Stream";
export default class CoreStitchServiceClientImpl implements CoreStitchServiceClient {
    private readonly requestClient;
    private readonly serviceRoutes;
    private readonly serviceName;
    constructor(requestClient: StitchAuthRequestClient, routes: StitchServiceRoutes, name?: string);
    callFunction<T>(name: string, args: any[], decoder?: Decoder<T>): Promise<T>;
    streamFunction<T>(name: string, args: any[], decoder?: Decoder<T>): Promise<Stream<T>>;
    private getStreamServiceFunctionRequest;
    private getCallServiceFunctionRequest;
}
