type FunctionCallback = (context: unknown, ...inputs: unknown[]) => unknown;
/**
 * Context on a function that is about to be executed
 * This object will be passed to all pre invocation hooks
 */
export interface PreInvocationContext {
    /**
     * The context object passed to the function
     * This object is readonly. You may modify it, but attempting to overwrite it will throw an error
     */
    readonly invocationContext: unknown;
    /**
     * The input values for this specific invocation. Changes to this array _will_ affect the inputs passed to your function
     */
    inputs: any[];
    /**
     * The function callback for this specific invocation. Changes to this value _will_ affect the function itself
     */
    functionCallback: FunctionCallback;
}
export declare class AzureFunctionsHook {
    private _functionsCoreModule;
    private _preInvocationHook;
    constructor();
    shutdown(): void;
    private _addPreInvocationHook;
}
export {};
//# sourceMappingURL=azureFnHook.d.ts.map