import { Nominal, Win32Type } from '../@types/win32';
export declare class AutoIt {
    private readonly path;
    private readonly logger;
    private lib;
    private functionCache;
    constructor();
    load(): void;
    unload(): void;
    get isLoaded(): boolean;
    invoke<FunctionReturnType extends Win32Type<Nominal<unknown, unknown>>, const FunctionArgumentTypes extends Win32Type<Nominal<unknown, unknown>>[]>(functionName: string, functionReturnType: FunctionReturnType, functionArgumentTypes: FunctionArgumentTypes, functionArguments: unknown[]): NonNullable<FunctionReturnType['__jsType']>;
}
export declare const autoit: AutoIt;
