import { ViewContainer } from '../ViewContainer'; /** * Executes view hooks on a component instance. * @export * @class ViewHookExecutor */ export declare class ViewHookExecutor { private _interceptors; /** * Invokes the view hook on the instance with the given argument. * This will also invoke any interceptors for the hook as well after the hook * on the component has been invoked. * @template T * @param {T} instance * @param {string} method * @param {*} [arg] * @returns {*} */ execute(instance: T, method: string, arg?: any): any; /** * Registers an interceptor for a hook on a given instance. * @param {*} instance * @param {string} hook * @param {Function} fn */ registerInterceptor(instance: any, hook: string, fn: Function): void; /** * Links a resolved view container to any hook observables. Metadata is read from the given target. * @template T The component type for the view container. * @param {ViewContainer} viewContainer * @param {Object} target */ link(viewContainer: ViewContainer, target: Object): void; }