import type { MnemonicPhrase, PrivateKey, ProviderOrUrl, AddressIndex, NumberOfAddresses, ShareNonce, DerivationPath, ChainId, NodeAddress, Expiration } from "./types"; export type Credentials = MnemonicPhrase | PrivateKey | PrivateKey[]; /* * namespace wrapper for old-style positional arguments */ type PossibleArguments = [ /* * required */ Credentials, ProviderOrUrl, NodeAddress, Expiration, /* * optional */ AddressIndex, NumberOfAddresses, ShareNonce, DerivationPath, ChainId ]; // (awful to have to do it this way) export type Arguments = | [PossibleArguments[0], PossibleArguments[1]] | [PossibleArguments[0], PossibleArguments[1], PossibleArguments[2]] | [ PossibleArguments[0], PossibleArguments[1], PossibleArguments[2], PossibleArguments[3] ] | [ PossibleArguments[0], PossibleArguments[1], PossibleArguments[2], PossibleArguments[3], PossibleArguments[4] ] | [ PossibleArguments[0], PossibleArguments[1], PossibleArguments[2], PossibleArguments[3], PossibleArguments[4], PossibleArguments[5] ] | [ PossibleArguments[0], PossibleArguments[1], PossibleArguments[2], PossibleArguments[3], PossibleArguments[4], PossibleArguments[5], PossibleArguments[6] ] | [ PossibleArguments[0], PossibleArguments[1], PossibleArguments[2], PossibleArguments[3], PossibleArguments[4], PossibleArguments[5], PossibleArguments[6], PossibleArguments[7], PossibleArguments[8] ];