export type PackageCommand = "install" | "remove" | "update" | "list";
export interface PackageCommandOptions {
    command: PackageCommand;
    source?: string;
    local: boolean;
    help: boolean;
    invalidOption?: string;
}
export interface PackageCommandRunnerOptions {
    appName: string;
    args: string[];
    cwd: string;
    agentDir: string;
    stdout?: NodeJS.WriteStream;
    stderr?: NodeJS.WriteStream;
    allowedCommands?: ReadonlySet<PackageCommand>;
}
export interface PackageCommandRunnerResult {
    handled: boolean;
    exitCode: number;
}
export declare function getPackageCommandUsage(appName: string, command: PackageCommand): string;
export declare function parsePackageCommand(args: string[], allowedCommands?: ReadonlySet<PackageCommand>): PackageCommandOptions | undefined;
export declare function runPackageCommand(options: PackageCommandRunnerOptions): Promise<PackageCommandRunnerResult>;
//# sourceMappingURL=package-commands.d.ts.map