export default Timer;
/**
 * @deprecated entirely superseded by the {@link BehaviorSystem}, prefer using a {@link DelayBehavior} instead
 */
declare class Timer {
    /**
     *
     * @param {EntityComponentDataset} ecd
     * @param {number} timeout
     * @returns {Promise}
     */
    static createTimeoutPromise(ecd: EntityComponentDataset, timeout: number): Promise<any>;
    /**
     *
     * @param options
     * @constructor
     * @property {number} repeat
     * @property {number} timeout
     * @property {Array.<function>} actions
     * @property {boolean} active
     */
    constructor(options?: {});
    repeat: any;
    timeout: any;
    /**
     *
     * @type {Function[]}
     */
    actions: Function[];
    /**
     *
     * @type {boolean}
     */
    active: boolean;
    /**
     *
     * @type {number}
     */
    ticks: number;
    /**
     * represents current time elapsed in a cycle, always less than timeout value
     * @type {number}
     */
    counter: number;
}
declare namespace Timer {
    let typeName: string;
    let serializable: boolean;
}
//# sourceMappingURL=Timer.d.ts.map