/**
 * @file Execute pnpm commands with optimized flags and security defaults.
 *   SECURITY: Array-based arguments prevent command injection. All elements in
 *   the args array are properly escaped by Node.js when passed to execBin().
 */
import type { SpawnOptions } from '../../../spawn/types';
export interface PnpmOptions extends SpawnOptions {
    allowLockfileUpdate?: boolean;
}
/**
 * Execute pnpm commands with optimized flags and settings.
 *
 * @example
 *   ;```typescript
 *   await execPnpm(['install'])
 *   await execPnpm(['add', 'lodash'], { allowLockfileUpdate: true })
 *   ```
 */
export declare function execPnpm(args: string[], options?: PnpmOptions | undefined): Promise<{
    cmd: string;
    args: string[] | readonly string[];
    code: number;
    signal: NodeJS.Signals | null;
    stdout: string | Buffer<ArrayBufferLike>;
    stderr: string | Buffer<ArrayBufferLike>;
}>;
