UNPKG

@bigmi/client

Version:

Reactive primitives for Bitcoin apps.

14 lines (13 loc) 1.45 kB
import { type Address, type BaseErrorType, type Compute, ConnectorAlreadyConnectedError, type ErrorType, type UserRejectedRequestError } from '@bigmi/core'; import type { Config } from '../factories/createConfig.js'; import type { Connector, CreateConnectorFn } from '../types/connector.js'; import type { ChainIdParameter } from './getConnectorClient.js'; export type ConnectParameters<config extends Config = Config, connector extends Connector | CreateConnectorFn = Connector | CreateConnectorFn, parameters extends unknown | undefined = (connector extends CreateConnectorFn ? Omit<NonNullable<Parameters<ReturnType<connector>['connect']>[0]>, 'isReconnecting'> : never) | (connector extends Connector ? Omit<NonNullable<Parameters<connector['connect']>[0]>, 'isReconnecting'> : never)> = Compute<ChainIdParameter<config> & { connector: connector | CreateConnectorFn; }> & parameters; export type ConnectReturnType<config extends Config = Config> = { accounts: readonly [Address, ...Address[]]; chainId: config['chains'][number]['id'] | (number extends config['chains'][number]['id'] ? number : number & {}); }; export type ConnectErrorType = ConnectorAlreadyConnectedError | UserRejectedRequestError | BaseErrorType | ErrorType; export declare function connect<config extends Config, connector extends Connector | CreateConnectorFn>(config: config, parameters: ConnectParameters<config, connector>): Promise<ConnectReturnType<config>>;