import { AccountId, Address, ExtrinsicStatus, EventRecord, Hash, RuntimeDispatchInfo } from "../../types/interfaces"; import { AnyNumber, AnyU8a, Callback, IExtrinsic, IExtrinsicEra, IKeyringPair, SignatureOptions } from "../../types/types"; import { ApiTypes, Signer } from '../types'; import { Observable } from 'rxjs'; export interface SubmittableResultImpl { readonly events: EventRecord[]; readonly status: ExtrinsicStatus; readonly isCompleted: boolean; readonly isError: boolean; readonly isFinalized: boolean; filterRecords(section: string, method: string): EventRecord[]; findRecord(section: string, method: string): EventRecord | undefined; } export interface SubmittableResultValue { events?: EventRecord[]; status: ExtrinsicStatus; } export declare type SubmittablePaymentResult = ApiType extends 'rxjs' ? Observable : Promise; export declare type SubmittableResultResult = ApiType extends 'rxjs' ? Observable : Promise; export declare type SubmittableResultSubscription = ApiType extends 'rxjs' ? Observable : Promise<() => void>; export declare type SubmittableThis = ApiType extends 'rxjs' ? Observable : Promise; export interface SignerOptions { blockHash: AnyU8a; era?: IExtrinsicEra | number; nonce: AnyNumber; signer?: Signer; tip?: AnyNumber; } export declare type AddressOrPair = IKeyringPair | string | AccountId | Address; export interface SubmittableExtrinsic extends IExtrinsic { paymentInfo(account: AddressOrPair, options?: Partial): SubmittablePaymentResult; send(): SubmittableResultResult; send(statusCb: Callback): SubmittableResultSubscription; sign(account: IKeyringPair, _options: Partial): this; signAsync(account: AddressOrPair, _options: Partial): SubmittableThis; signAndSend(account: AddressOrPair, options?: Partial): SubmittableResultResult; signAndSend(account: AddressOrPair, statusCb: Callback): SubmittableResultSubscription; signAndSend(account: AddressOrPair, options: Partial, statusCb?: Callback): SubmittableResultSubscription; }