import type { APIClient } from '@greymass/eosio' ; import type { ChainIdType } from 'eosio-signing-request' ; import type { LinkStorage } from './link-storage' ; import type { LinkTransport } from './link-transport' ; import type { LinkCallbackService } from './link-callback' ; /**
 * Type describing a EOSIO chain.
 */ export interface LinkChainConfig { /**
     * The chains unique 32-byte id.
     */ chainId : ChainIdType ; /**
     * URL to EOSIO node to communicate with (or a @greymass/eosio APIClient instance).
     */ nodeUrl : string | APIClient ; } /**
 * Available options when creating a new [[Link]] instance.
 */ export interface LinkOptions { /**
     * Link transport responsible for presenting signing requests to user.
     */ transport : LinkTransport ; /**
     * Chain configurations to support.
     * For example for a link that can login and transact on EOS and WAX:
     * ```ts
     * [
     *     {
     *         chainId: 'aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906',
     *         nodeUrl: 'https://eos.greymass.com',
     *     },
     *     {
     *         chainId: '1064487b3cd1a897ce03ae5b6a865651747e2e152090f99c1d19d44e01aea5a4',
     *         nodeUrl: 'https://wax.greymass.com',
     *     },
     * ]
     * ```
     */ chains : LinkChainConfig [ ] ; deprecated chainId ? : ChainIdType ; deprecated client ? : string | APIClient ; default service ? : string | LinkCallbackService ; default storage ? : LinkStorage | null ; default verifyProofs ? : boolean ; default encodeChainIds ? : boolean ; } internal export namespace LinkOptions { internal export const defaults = { service : 'https://cb.anchor.link' , verifyProofs : false , encodeChainIds : true , } ; }