import { type Stats } from 'fs';
import type { DirectoryFetcher, DirectoryFetcherOptions } from '@pnpm/fetcher-base';
import { type DependencyManifest } from '@pnpm/types';
export interface CreateDirectoryFetcherOptions {
    includeOnlyPackageFiles?: boolean;
    resolveSymlinks?: boolean;
}
export declare function createDirectoryFetcher(opts?: CreateDirectoryFetcherOptions): {
    directory: DirectoryFetcher;
};
export type FetchFromDirOptions = Omit<DirectoryFetcherOptions, 'lockfileDir'> & CreateDirectoryFetcherOptions;
export interface FetchResult {
    local: true;
    filesIndex: Record<string, string>;
    filesStats?: Record<string, Stats | null>;
    packageImportMethod: 'hardlink';
    manifest: DependencyManifest;
    requiresBuild: boolean;
}
export declare function fetchFromDir(dir: string, opts: FetchFromDirOptions): Promise<FetchResult>;
