feat(wasm): validate client event and state ABI
req: client_local/005\nreq: client_local/006\nreq: client_local/007\nreq: client_local/008\nreq: client_local/009\nreq: client_local/010\nreq: client_local/014
This commit is contained in:
Vendored
+11
-1
@@ -45,6 +45,16 @@ export interface AtomSnapshot {
|
||||
bytes: Uint8Array;
|
||||
}
|
||||
|
||||
export type ClientHandler = (
|
||||
eventVersion: number,
|
||||
eventKind: string,
|
||||
eventValue: string | undefined,
|
||||
eventChecked: boolean | undefined,
|
||||
eventKey: string | undefined,
|
||||
stateVersion: number,
|
||||
encodedState: string,
|
||||
) => Uint8Array | Promise<Uint8Array>;
|
||||
|
||||
export interface HemxRuntime {
|
||||
readonly runtimeAbiVersion: number;
|
||||
roots(): Element[];
|
||||
@@ -54,7 +64,7 @@ export interface HemxRuntime {
|
||||
decodeBatch(buffer: ArrayBuffer): EffectBatch;
|
||||
atomValue(root: Element | ParentNode | null | undefined, id: number): Uint8Array | undefined;
|
||||
decodeAtomState(encoded: string): AtomSnapshot[];
|
||||
registerClientHandler(name: string, handler: () => Uint8Array | Promise<Uint8Array>): void;
|
||||
registerClientHandler(name: string, handler: ClientHandler): void;
|
||||
}
|
||||
|
||||
declare global {
|
||||
|
||||
Reference in New Issue
Block a user