import { ChainCallDTO, GalaChainResponse, Inferred } from "../../types"; import { ChainClientBuilder } from "./ChainClientBuilder"; import { ContractConfig } from "./ContractConfig"; export type ClassType = { new (...args: unknown[]): T; }; export declare const isClassType: (obj: unknown) => obj is ClassType; export declare abstract class ChainClient { readonly builder: Promise; readonly userId: string; readonly contractConfig: ContractConfig; readonly orgMsp: string; protected constructor(builder: Promise, userId: string, contractConfig: ContractConfig, orgMsp: string); abstract submitTransaction(method: string): Promise>; abstract submitTransaction(method: string, dto: ChainCallDTO): Promise>; abstract submitTransaction(method: string, resp: ClassType>): Promise>; abstract submitTransaction(method: string, dto: ChainCallDTO, resp: ClassType>): Promise>; abstract evaluateTransaction(method: string): Promise>; abstract evaluateTransaction(method: string, dto: ChainCallDTO): Promise>; abstract evaluateTransaction(method: string, resp: ClassType>): Promise>; abstract evaluateTransaction(method: string, dto: ChainCallDTO, resp: ClassType>): Promise>; abstract disconnect(): Promise; abstract forUser(userId: string, secret?: string): ChainClient; extendAPI(apiHandlerFn: (_: ChainClient) => T): this & T; } //# sourceMappingURL=ChainClient.d.ts.map