import { GuidValue } from "./Guid";
import { OmniaSharedBootstrapData } from "./OmniaSharedBootstrapData";
export interface WorkerProxyAction<TParamType> {
    id: GuidValue;
}
export interface WorkerProxyFunction<TParamType, TReturnType> extends WorkerProxyAction<TParamType> {
}
export interface WorkerProxyMessage<T> {
    id: GuidValue;
    data: T;
    handlerId: GuidValue;
    initiator: WorkerProxyFunctionInitiators;
}
export declare enum WorkerProxyFunctionInitiators {
    ui = "main",
    worker = "worker"
}
export interface LoadManifestsMessage extends PostMessageWithType {
    type: "loadManifests";
    resourceUrls: Array<string>;
}
export interface BootWorkerMessage {
    type: "bootWorker";
    loadManifests: LoadManifestsMessage;
    bootData: OmniaSharedBootstrapData;
}
export interface PostMessageWithType {
    type: "bootWorker" | "loadManifests";
}
