UNPKG

@mutopad/connex-framework

Version:
75 lines (74 loc) 2.94 kB
/// <reference types="@mutopad/connex-types" /> /// <reference types="@mutopad/connex-types" /> /// <reference types="@mutopad/connex-types" /> /// <reference types="@mutopad/connex-types" /> /// <reference types="@mutopad/connex-types" /> /// <reference types="@mutopad/connex-types" /> /// <reference types="@mutopad/connex-types" /> /** Connex driver interface */ declare namespace Connex { interface Driver { readonly genesis: Thor.Block; /** current known head */ readonly head: Thor.Status['head']; /** * poll new head * rejected only when driver closed */ pollHead(): Promise<Thor.Status['head']>; getBlock(revision: string | number): Promise<Thor.Block | null>; getTransaction(id: string, allowPending: boolean): Promise<Thor.Transaction | null>; getReceipt(id: string): Promise<Thor.Transaction.Receipt | null>; getAccount(addr: string, revision: string): Promise<Thor.Account>; getCode(addr: string, revision: string): Promise<Thor.Account.Code>; getStorage(addr: string, key: string, revision: string): Promise<Thor.Account.Storage>; explain(arg: Driver.ExplainArg, revision: string, cacheHints?: string[]): Promise<VM.Output[]>; filterEventLogs(arg: Driver.FilterEventLogsArg, cacheHints?: string[]): Promise<Thor.Filter.Row<'event'>[]>; filterTransferLogs(arg: Driver.FilterTransferLogsArg, cacheHints?: string[]): Promise<Thor.Filter.Row<'transfer'>[]>; signTx(msg: Vendor.TxMessage, options: Driver.TxOptions): Promise<Vendor.TxResponse>; signCert(msg: Vendor.CertMessage, option: Driver.CertOptions): Promise<Vendor.CertResponse>; } namespace Driver { type ExplainArg = { clauses: Thor.Transaction['clauses']; caller?: string; gas?: number; gasPrice?: string; }; type FilterEventLogsArg = { range: Thor.Filter.Range; options: { offset: number; limit: number; }; criteriaSet: Thor.Filter.Criteria<'event'>[]; order: 'asc' | 'desc'; }; type FilterTransferLogsArg = { range: Thor.Filter.Range; options: { offset: number; limit: number; }; criteriaSet: Thor.Filter.Criteria<'transfer'>[]; order: 'asc' | 'desc'; }; type TxOptions = { signer?: string; gas?: number; dependsOn?: string; link?: string; comment?: string; delegator?: { url: string; signer?: string; }; onAccepted?: () => void; }; type CertOptions = { signer?: string; link?: string; onAccepted?: () => void; }; } }