import { IHookAction, IHookActionFunction, IHookCache, IHookFilter, IHookFilterFunction, IHookFilterSync, IHookFilterSyncFunction } from '../interfaces/hooks'; interface HookOptions { priority?: number; id?: string; } declare const Hooks: { addAction: (key: T, action: IHookActionFunction, options?: Omit) => void; addFilter: (key: T_1, filter: IHookFilterFunction, options?: HookOptions) => void; addSyncFilter: (key: T_2, filterSync: IHookFilterSyncFunction, options?: HookOptions) => void; removeAction: (key: keyof Burdy.IActions, id: string) => void; removeFilter: (key: keyof Burdy.IFilters, id: string) => void; hasAction: (key: keyof Burdy.IActions, id: string) => boolean; hasFilter: (key: keyof Burdy.IFilters, id: string) => boolean; doAction: (key: T_3, ...args: Burdy.IActions[T_3]) => Promise; applyFilters: (key: T_4, ...args: Burdy.IFilters[T_4]) => Promise; applySyncFilters: (key: T_5, ...args: Burdy.ISyncFilters[T_5]) => Burdy.ISyncFilters[T_5][0]; getQueue: (type: keyof IHookCache) => { [key: string]: IHookAction[]; } | { [key: string]: IHookFilter[]; } | { [key: string]: IHookFilterSync[]; }; clearQueue: (type: keyof IHookCache) => void; clearAllQueues: () => void; }; export default Hooks;