2021-02-07 20:01:37 +01:00

27 lines
1.4 KiB
TypeScript

import { UiVariableConsumer, UiVariableMap, UiVariableProvider } from "tc-shared/ui/utils/Variable";
declare class IpcUiVariableProvider<Variables extends UiVariableMap> extends UiVariableProvider<Variables> {
readonly ipcChannelId: string;
private broadcastChannel;
constructor();
destroy(): void;
protected doSendVariable(variable: string, customData: any, value: any): void;
private handleIpcMessage;
generateConsumerDescription(): IpcVariableDescriptor<Variables>;
}
export declare type IpcVariableDescriptor<Variables extends UiVariableMap> = {
readonly ipcChannelId: string;
};
declare class IpcUiVariableConsumer<Variables extends UiVariableMap> extends UiVariableConsumer<Variables> {
readonly description: IpcVariableDescriptor<Variables>;
private broadcastChannel;
private editListener;
constructor(description: IpcVariableDescriptor<Variables>);
destroy(): void;
protected doEditVariable(variable: string, customData: any, newValue: any): Promise<void> | void;
protected doRequestVariable(variable: string, customData: any): void;
private handleIpcMessage;
}
export declare function createIpcUiVariableProvider<Variables extends UiVariableMap>(): IpcUiVariableProvider<Variables>;
export declare function createIpcUiVariableConsumer<Variables extends UiVariableMap>(description: IpcVariableDescriptor<Variables>): IpcUiVariableConsumer<Variables>;
export {};