@bigmi/client
Version:
Reactive primitives for Bitcoin apps.
17 lines (14 loc) • 542 B
text/typescript
import type { Chain } from '@bigmi/core'
import type { Compute, ExactPartial } from '@bigmi/core'
import type { Connection } from './connection.js'
export type State<
chains extends readonly [Chain, ...Chain[]] = readonly [Chain, ...Chain[]],
> = {
chainId: chains[number]['id']
connections: Map<string, Connection>
current: string | null
status: 'connected' | 'connecting' | 'disconnected' | 'reconnecting'
}
export type PartializedState = Compute<
ExactPartial<Pick<State, 'chainId' | 'connections' | 'current' | 'status'>>
>