@ucanto/client
Version:
UCAN RPC Client
29 lines • 1.38 kB
TypeScript
export function connect<T extends Record<string, any>>(options: API.ConnectionOptions<T>): API.ConnectionView<T>;
export function execute<C extends API.Capability<API.Ability, `${string}:${string}`, any>, T extends Record<string, any>, I extends API.Transport.Tuple<API.ServiceInvocation<C, T>>>(invocations: I, connection: API.Connection<T>): Promise<API.InferReceipts<I, T>>;
import * as API from '@ucanto/interface';
/**
* @template {Record<string, any>} T
* @implements {API.ConnectionView<T>}
*/
declare class Connection<T extends Record<string, any>> implements API.ConnectionView<T> {
/**
* @param {API.ConnectionOptions<T>} options
*/
constructor(options: API.ConnectionOptions<T>);
id: API.Principal<`did:${string}:${string}`>;
options: API.ConnectionOptions<T>;
codec: API.OutboundCodec;
channel: API.Channel<T>;
hasher: API.MultihashHasher<number>;
/**
* Execute invocations.
*
* @template {API.Capability} C
* @template {API.Tuple<API.ServiceInvocation<C, T>>} I
* @param {I} invocations
* @returns {Promise<API.InferReceipts<I, T>>}
*/
execute<C extends API.Capability<API.Ability, `${string}:${string}`, any>, I extends API.Transport.Tuple<API.ServiceInvocation<C, T>>>(...invocations: I): Promise<API.InferReceipts<I, T>>;
}
export {};
//# sourceMappingURL=connection.d.ts.map