import type { HttpHandler, HttpRequest, InvocationContext } from "@azure/functions";
import { CheckPermissionsCallback, OpenAPIOptions, Permission } from "./types";
/**
 * @private
 * Options for linking with Azure Blob Storage
 */
interface RouterHandlerOptions {
    authLevel?: "admin";
    serviceName: string;
    connectionString: string;
    baseRoute: string;
    staticDirs: string[];
    openapi: OpenAPIOptions | undefined;
    checkPermissions: CheckPermissionsCallback;
}
type Store = RouterHandlerOptions & {
    accept: string | null;
    locale: string | undefined;
    url: string;
    connectionString: string;
    baseRoute: string;
    request: HttpRequest;
    context: InvocationContext;
};
export declare function getStore(throwError: false): Store | undefined;
export declare function getStore(throwError?: true): Store;
export declare function wrapHttpHandlerWithStore(options: RouterHandlerOptions, handler: HttpHandler, permissions: Permission[]): HttpHandler;
export {};
