Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | import type { Kernel, ClusterConfig } from '@metamask/ocap-kernel';
import type { Json } from '@metamask/utils';
/**
* A CapTP message that can be sent over the wire.
*/
export type CapTPMessage = Record<string, Json>;
/**
* Result of launching a subcluster.
*
* The rootKref contains the kref string for the bootstrap vat's root object.
*/
export type LaunchResult = {
subclusterId: string;
rootKref: string;
};
/**
* The kernel facade interface - methods exposed to userspace via CapTP.
*
* This is the remote presence type that the background receives from the kernel.
*/
export type KernelFacade = {
ping: () => Promise<'pong'>;
launchSubcluster: (config: ClusterConfig) => Promise<LaunchResult>;
terminateSubcluster: Kernel['terminateSubcluster'];
queueMessage: Kernel['queueMessage'];
getStatus: Kernel['getStatus'];
pingVat: Kernel['pingVat'];
getVatRoot: (krefString: string) => Promise<unknown>;
};
|