import State from "../state"; import Agile from ".."; import { Integration } from "./use"; import Collection from "../collection"; import Group from "../collection/group"; import Event, { EventCallbackFunction } from "../event"; export declare function AgileHOC(ReactComponent: any, deps?: Array | { [key: string]: State; } | State, agileInstance?: Agile): any; declare type AgileHookArrayType = { [K in keyof T]: T[K] extends Group ? U[] : T[K] extends State ? U : T[K] extends Collection ? U[] : T[K] extends undefined ? undefined : never; }; declare type AgileHookType = T extends Group ? U[] : T extends State ? U : T extends Collection ? U[] : T extends undefined ? undefined : never; export declare function useAgile>(deps: X, agileInstance?: Agile): AgileHookArrayType; export declare function useAgile(deps: X, agileInstance?: Agile): AgileHookType; export declare function useEvent(event: E, callback: EventCallbackFunction, agileInstance?: Agile): void; declare const reactIntegration: Integration; export default reactIntegration;