///
import { EventEmitter } from "events";
import { Map as iMap } from "immutable";
import { SyncDoc } from "./sync-doc";
import { Client } from "./types";
declare type State = "init" | "ready" | "closed";
declare type Value = {
[key: string]: any;
};
interface CommMessage {
header: {
msg_id: string;
};
parent_header: {
msg_id: string;
};
content: any;
buffers: any[];
}
export interface Message {
}
export declare type ModelState = {
[key: string]: any;
};
export declare class IpywidgetsState extends EventEmitter {
private syncdoc;
private client;
private table;
private state;
private table_options;
private create_synctable;
private capture_output;
private clear_output;
constructor(syncdoc: SyncDoc, client: Client, create_synctable: Function);
init(): Promise;
keys(): any;
get(model_id: string, type: string): iMap | undefined;
get_model_state(model_id: string): ModelState | undefined;
get_model_value(model_id: string): Value;
get_model_buffers(model_id: string): {
buffer_paths: any[];
buffers: any[];
};
set_model_value(model_id: string, value: Value, fire_change_event?: boolean): void;
set_model_buffers(model_id: string, buffer_paths: string[], buffers: any[], fire_change_event?: boolean): void;
set_model_state(model_id: string, state: any, fire_change_event?: boolean): void;
set(model_id: string, type: "value" | "state" | "buffers", data: any, fire_change_event?: boolean): void;
save(): Promise;
close(): Promise;
private dbg;
clear(): Promise;
private set_state;
get_state(): State;
private assert_state;
process_comm_message_from_kernel(msg: CommMessage): Promise;
process_comm_message_from_browser(msg: CommMessage): Promise;
capture_output_message(mesg: any): boolean;
}
export {};