import type { AbsolutePath } from '@-xun/fs'; import type { ParametersNoFirst } from "../../../common/src/types.js"; export type DeriveVirtualGitignoreLinesOptions = { /** * Use the internal cached result from a previous run, if available. * * Unless `useCached` is `false`, the results returned by this function will * always strictly equal (`===`) each other with respect to call signature. * * @see {@link cache} */ useCached: boolean; /** * If `true`, include any paths unknown to git. * * @default false */ includeUnknownPaths?: boolean; }; declare function deriveVirtualGitignoreLines_(shouldRunSynchronously: false, projectRoot: AbsolutePath, options: DeriveVirtualGitignoreLinesOptions): Promise; declare function deriveVirtualGitignoreLines_(shouldRunSynchronously: true, projectRoot: AbsolutePath, options: DeriveVirtualGitignoreLinesOptions): string[]; /** * Asynchronously return an array of the lines of a `.gitignore` file, or an * empty array if an error occurs. The string '.git' is prepended to the result. * * You can optionally include paths unknown to git as well via * `includeUnknownPaths`. * * **NOTE: the result of this function is memoized! This does NOT _necessarily_ * mean results will strictly equal each other. See `useCached` in this specific * function's options for details.** To fetch fresh results, set the `useCached` * option to `false` or clear the internal cache with {@link cache.clear}. */ export declare function deriveVirtualGitignoreLines(...args: ParametersNoFirst): Promise; export declare namespace deriveVirtualGitignoreLines { /** * Synchronously return an array of the lines of a `.gitignore` file, or an * empty array if an error occurs. The string '.git' is prepended to the * result. * * **NOTE: the result of this function is memoized! This does NOT * _necessarily_ mean results will strictly equal each other. See `useCached` * in this specific function's options for details.** To fetch fresh results, * set the `useCached` option to `false` or clear the internal cache with * {@link cache.clear}. */ const sync: (projectRoot: AbsolutePath, options: Omit) => Awaited>; } export {};