export interface KeyStore {
readonly byteLimit?: number;
readonly currentUserAccount$: Observable<UserAccount | undefined>;
readonly getCurrentUserAccount: () => UserAccount | undefined;
readonly userAccounts$: Observable<readonly UserAccount[]>;
readonly getUserAccounts: () => readonly UserAccount[];
readonly selectUserAccount: (id?: UserAccountID) => Promise<void>;
readonly deleteUserAccount?: (id: UserAccountID) => Promise<void>;
readonly updateUserAccountName?: (options: UpdateAccountNameOptions) => Promise<void>;
readonly sign: (options: { readonly account: UserAccountID; readonly message: string }) => Promise<string>;
}
() => UserAccount | undefined
() => readonly UserAccount[]
(id?: UserAccountID) => Promise<void>
(id: UserAccountID) => Promise<void>
(options: UpdateAccountNameOptions) => Promise<void>
(options: {
readonly account: UserAccountID;
readonly message: string;
}) => Promise<string>