test-ic-wallet-middleware-icrc
Version:
Ic middleware wallet ICRC protocol
28 lines (27 loc) • 1.88 kB
TypeScript
import { IContactDataStorage } from "../../../storage/contactDataStorage/contactDataStorage";
import { AddAssetContactForm } from "../../../types/contacts/addAssetContactForm";
import { AddSubAccountContactForm } from "../../../types/contacts/addSubAccountContactForm";
import { AssetContactModel } from "../../../types/contacts/assetContactModel";
import { ContactModel } from "../../../types/contacts/contactModel";
import { EditSubAccountContactForm } from "../../../types/contacts/editSubAccountContactForm";
import { RemoveAssetContactForm } from "../../../types/contacts/removeAssetContactForm";
import { RemoveSubAccountContactForm } from "../../../types/contacts/removeSubAccountContactForm";
import "reflect-metadata";
export declare class ContactRepository {
private contactDataStorage;
constructor(contactDataStorage: IContactDataStorage);
getContacts(): Promise<ContactModel[]>;
addContact(contact: ContactModel): Promise<void>;
updateContactName(principal: string, newName: string): Promise<ContactModel>;
removeContact(principal: string): Promise<void>;
addAssetContact(form: AddAssetContactForm): Promise<ContactModel>;
removeAssetContact(form: RemoveAssetContactForm): Promise<ContactModel>;
addSubAccountContact(form: AddSubAccountContactForm): Promise<ContactModel>;
updateSubAccountContact(form: EditSubAccountContactForm): Promise<ContactModel>;
removeSubAccountContact(form: RemoveSubAccountContactForm): Promise<ContactModel>;
removeAssetFromAllContacts(ledgerAddress: string): Promise<void>;
isContactExist(contactId: string): Promise<boolean>;
getContactByPrincipal(principal: string): Promise<ContactModel>;
getContactAssetOrDefault(contact: ContactModel, ledgerAddress: string): AssetContactModel | undefined;
getContactAsset(contact: ContactModel, ledgerAddress: string): AssetContactModel;
}