test-ic-wallet-middleware-icrc
Version:
Ic middleware wallet ICRC protocol
13 lines (12 loc) • 986 B
TypeScript
import { BaseHandler, IFormError, ILogger } from "@ic-wallet-middleware/common";
import { SubAccountBalanceHandler } from "../../internalHandlers/icrcCacheDataHandlers/assets/subAccountBalanceHandler/subAccountBalanceHandler";
import { AssetSubAccountView, SubAccountId, TokenMarketInfo } from "../../types";
import { InternalHandlerForm } from "../../types/forms/internalHandlerForm";
export declare abstract class BaseInternalHandler<TForm extends InternalHandlerForm, TResult> extends BaseHandler<TForm, TResult> {
protected subAccountBalanceHandler: SubAccountBalanceHandler;
constructor(logger: ILogger, subAccountBalanceHandler: SubAccountBalanceHandler);
abstract validate(form: TForm): Promise<void>;
abstract process(form: TForm): Promise<TResult>;
protected getSubAccountById(subAccountId: SubAccountId, form: TForm, assetMarket: TokenMarketInfo | undefined, decimal: number): Promise<AssetSubAccountView>;
parseError<T>(errors: IFormError[]): void;
}