///
import { State, StateTransformers } from "./utils";
import { EventEmitter } from "events";
import { Widget } from "./Widget";
import { Plugin } from "./plugins/plugin";
export declare class StatefulWidget extends Widget {
protected cachedState: State;
protected plugins: Array;
eventEmitter: EventEmitter;
constructor(state: State, transformers?: StateTransformers);
private _onMount;
private connectedCallback;
private runPlugins;
readonly emitter: EventEmitter;
readonly on: (event: string | symbol, listener: (...args: any[]) => void) => EventEmitter;
readonly emit: (event: string | symbol, ...args: any[]) => boolean;
peerComponent(component: StatefulWidget): void;
cacheState(): any;
setState(state: State): void;
beforeRender(): void;
afterRender(): void;
}