import { System } from '../system';
import { Dict } from '../types/Dict';
import { ElementEE, Element_ } from './Element';
import { ION, Opt } from './Unit';
export type Field_EE = {};
export type FieldEvents<_EE extends Dict<any[]>> = ElementEE<_EE & Field_EE> & Field_EE;
export declare class Field<K extends string, I extends Record<K, any>, O extends Record<K, any>, _J extends Dict<any> = {}, _EE extends FieldEvents<_EE> = FieldEvents<Field_EE>> extends Element_<I, O, _EE> {
    private _ever_played;
    private _key;
    constructor({ i, o }: ION<I, O>, opt: Opt, system: System, id: string, key: K);
    initialValue(): any;
}
