xref: /aosp_15_r20/external/skia/experimental/tskit/interface/load.ts (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker/// <reference path="../bindings/embind.d.ts" />
2*c8dee2aaSAndroid Build Coastguard Workerdeclare const Module: embind.EmbindModule;
3*c8dee2aaSAndroid Build Coastguard Worker// eslint-disable-next-line @typescript-eslint/no-unused-vars
4*c8dee2aaSAndroid Build Coastguard Workerconst CanvasKit = Module; // lets other files use this alias to declare new public APIs.
5*c8dee2aaSAndroid Build Coastguard Worker// eslint-disable-next-line @typescript-eslint/no-unused-vars
6*c8dee2aaSAndroid Build Coastguard Workernamespace load {
7*c8dee2aaSAndroid Build Coastguard Worker    type CallbackFn = () => void;
8*c8dee2aaSAndroid Build Coastguard Worker    const toLoad: CallbackFn[] = [];
9*c8dee2aaSAndroid Build Coastguard Worker    export const afterLoad = (callback: CallbackFn): void => {
10*c8dee2aaSAndroid Build Coastguard Worker      toLoad.push(callback);
11*c8dee2aaSAndroid Build Coastguard Worker    };
12*c8dee2aaSAndroid Build Coastguard Worker
13*c8dee2aaSAndroid Build Coastguard Worker    Module.onRuntimeInitialized = () => {
14*c8dee2aaSAndroid Build Coastguard Worker      console.log('runtime initialized');
15*c8dee2aaSAndroid Build Coastguard Worker      toLoad.forEach(((callback) => callback()));
16*c8dee2aaSAndroid Build Coastguard Worker    };
17*c8dee2aaSAndroid Build Coastguard Worker}
18