import { FieldSetFactory, Fields } from "../field/index.js"; import { AccountKeyType } from "../util/index.js"; import { AccountKey } from "./accountkey.js"; export declare class AccountKeyFactory extends FieldSetFactory { constructor(); private _fromObject; static fromObject(fields: Fields): AccountKey; private _fromRLP; static fromRLP(rlp: string): AccountKey; } export interface ParsedAccountKeyNil { type: AccountKeyType.Nil; } export interface ParsedAccountKeyLegacy { type: AccountKeyType.Legacy; } export interface ParsedAccountKeyPublic { type: AccountKeyType.Public; key: string; } export interface ParsedAccountKeyFail { type: AccountKeyType.Fail; } export interface ParsedAccountKeyWeightedMultiSig { type: AccountKeyType.WeightedMultiSig; threshold: number; keys: { weight: number; key: string; }[]; } export type ParsedAccountKeyEmbeddable = ParsedAccountKeyNil | ParsedAccountKeyLegacy | ParsedAccountKeyPublic | ParsedAccountKeyFail | ParsedAccountKeyWeightedMultiSig; export interface ParsedAccountKeyRoleBased { type: AccountKeyType.RoleBased; keys: ParsedAccountKeyEmbeddable[]; } export type ParsedAccountKey = ParsedAccountKeyEmbeddable | ParsedAccountKeyRoleBased; export declare function parseAccountKey(rlp: string): ParsedAccountKey;