/**
 * Copyright (c) Haiku 2016-2018. All rights reserved.
 */
import enhance from './reflection/enhance';
import inject from './reflection/inject';
export interface HaikuRoot {
    haiku?: {
        cache?: {
            [key in string]: any;
        };
        models?: {
            [key in string]: any[];
        };
        report?: () => void;
        enhance?: typeof enhance;
        inject?: typeof inject;
        idCounter?: number;
        HaikuGlobalAnimationHarness?: {
            queue: (() => void)[];
            frame: () => void;
            raf?: () => void;
            cancel: () => void;
        };
    };
}
declare const haiku: {
    cache?: {
        [x: string]: any;
    };
    models?: {
        [x: string]: any[];
    };
    report?: () => void;
    enhance?: typeof enhance;
    inject?: typeof inject;
    idCounter?: number;
    HaikuGlobalAnimationHarness?: {
        queue: (() => void)[];
        frame: () => void;
        raf?: () => void;
        cancel: () => void;
    };
};
export default haiku;
