import { InspectorConfig } from '@graphql-inspector/config';
import { Loaders } from '@graphql-inspector/loaders';
import { CommandModule as Command } from 'yargs';
export { Command };
export interface UseCommandsAPI {
    config: InspectorConfig;
    loaders: Loaders;
}
export declare type CommandFactory<T = {}, U = {}> = (api: Required<UseCommandsAPI>) => Command<T, U>;
export declare function useCommands(api: UseCommandsAPI): Command[];
export declare function createCommand<T = {}, U = {}>(factory: CommandFactory<T, U>): CommandFactory<T, U>;
export declare function ensureAbsolute(filepath: string, basepath?: string): string;
export interface GlobalArgs {
    require?: string[];
    token?: string;
    header?: string[];
}
export declare function parseGlobalArgs(args: GlobalArgs): {
    headers: Record<string, string>;
    token: string | undefined;
};
export declare function mockCommand(mod: Command, cmd: string): Promise<string>;
