UNPKG

wowok

Version:

Wowok Blockchain TypeScript API

46 lines (45 loc) 2.49 kB
import type { Transaction } from "../../transactions/index.js"; import type { PassportObject, PermissionObject, WithPermissionObject, CallEnv, ContactObject, ContactAddress } from "../common.js"; import type { CallResult } from "./base.js"; import { CallBase } from "./base.js"; import type { GuardSubmissionToFill } from "./guard.js"; import type { ReceivedObjectsOrRecently } from "../query/received.js"; export declare const MAX_IM_COUNT = 200; export interface ImParam { at: string; description?: string; } export interface CallContact_Data { object: WithPermissionObject; my_status?: string; description?: string; location?: string; ims?: { op: "add" | "set"; im: ImParam[]; } | { op: "remove"; im: string[]; } | { op: "clear"; }; owner_receive?: ReceivedObjectsOrRecently; } export declare class CallContact extends CallBase { data: CallContact_Data; object_address: string | undefined; permission_address: string | undefined; new_permission_description: string | undefined; constructor(data: CallContact_Data); protected prepare(env: CallEnv): Promise<void>; call(env: CallEnv): Promise<CallResult>; operate(env: CallEnv, tx: Transaction, passport?: PassportObject, submission?: GuardSubmissionToFill[]): Promise<void>; } export declare function create(tx: Transaction, contact: ContactObject): ContactAddress; export declare function change_status(tx: Transaction, contact: ContactObject, status: string): ContactAddress; export declare function newContact(tx: Transaction, permission: PermissionObject, description: string, passport?: PassportObject): ContactObject; export declare function description_set(tx: Transaction, contact: ContactObject, permission: PermissionObject, description: string, passport?: PassportObject): void; export declare function location_set(tx: Transaction, contact: ContactObject, permission: PermissionObject, location: string, passport?: PassportObject): void; export declare function im_add(tx: Transaction, contact: ContactObject, permission: PermissionObject, im: string, description?: string | null, passport?: PassportObject): void; export declare function im_remove(tx: Transaction, contact: ContactObject, permission: PermissionObject, im: string[], passport?: PassportObject): void; export declare function im_clear(tx: Transaction, contact: ContactObject, permission: PermissionObject, passport?: PassportObject): void;