UNPKG

@metamask/ocap-kernel

Version:
24 lines 1.18 kB
import type { CapData } from "@endo/marshal"; import type { KRef, KernelPromise, Message, VatId } from "../../types.mjs"; import type { StoreContext } from "../types.mjs"; /** * Create a promise store object that provides functionality for managing kernel promises. * * @param ctx - The store context. * @returns A promise store object that maps various persistent kernel data * structures onto `kv`. */ export declare function getPromiseMethods(ctx: StoreContext): { initKernelPromise: () => [KRef, KernelPromise]; getKernelPromise: (kpid: KRef) => KernelPromise; deleteKernelPromise: (kpid: KRef) => void; getNextPromiseId: () => KRef; addPromiseSubscriber: (vatId: VatId, kpid: KRef) => void; setPromiseDecider: (kpid: KRef, vatId: VatId) => void; resolveKernelPromise: (kpid: KRef, rejected: boolean, value: CapData<KRef>) => void; enqueuePromiseMessage: (kpid: KRef, message: Message) => void; getKernelPromiseMessageQueue: (kpid: KRef) => Message[]; getPromisesByDecider: (decider: VatId) => Generator<string>; getKpidsToRetire: (origKpid: KRef, origValue: CapData<KRef>) => KRef[]; }; //# sourceMappingURL=promise.d.mts.map