| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 | 
							- import {Options as LocatePathOptions} from 'locate-path';
 
- declare const stop: unique symbol;
 
- declare namespace findUp {
 
- 	interface Options extends LocatePathOptions {}
 
- 	type StopSymbol = typeof stop;
 
- 	type Match = string | StopSymbol | undefined;
 
- }
 
- declare const findUp: {
 
- 	/**
 
- 	Find a file or directory by walking up parent directories.
 
- 	@param name - Name of the file or directory to find. Can be multiple.
 
- 	@returns The first path found (by respecting the order of `name`s) or `undefined` if none could be found.
 
- 	@example
 
- 	```
 
- 	// /
 
- 	// └── Users
 
- 	//     └── sindresorhus
 
- 	//         ├── unicorn.png
 
- 	//         └── foo
 
- 	//             └── bar
 
- 	//                 ├── baz
 
- 	//                 └── example.js
 
- 	// example.js
 
- 	import findUp = require('find-up');
 
- 	(async () => {
 
- 		console.log(await findUp('unicorn.png'));
 
- 		//=> '/Users/sindresorhus/unicorn.png'
 
- 		console.log(await findUp(['rainbow.png', 'unicorn.png']));
 
- 		//=> '/Users/sindresorhus/unicorn.png'
 
- 	})();
 
- 	```
 
- 	*/
 
- 	(name: string | string[], options?: findUp.Options): Promise<string | undefined>;
 
- 	/**
 
- 	Find a file or directory by walking up parent directories.
 
- 	@param matcher - Called for each directory in the search. Return a path or `findUp.stop` to stop the search.
 
- 	@returns The first path found or `undefined` if none could be found.
 
- 	@example
 
- 	```
 
- 	import path = require('path');
 
- 	import findUp = require('find-up');
 
- 	(async () => {
 
- 		console.log(await findUp(async directory => {
 
- 			const hasUnicorns = await findUp.exists(path.join(directory, 'unicorn.png'));
 
- 			return hasUnicorns && directory;
 
- 		}, {type: 'directory'}));
 
- 		//=> '/Users/sindresorhus'
 
- 	})();
 
- 	```
 
- 	*/
 
- 	(matcher: (directory: string) => (findUp.Match | Promise<findUp.Match>), options?: findUp.Options): Promise<string | undefined>;
 
- 	sync: {
 
- 		/**
 
- 		Synchronously find a file or directory by walking up parent directories.
 
- 		@param name - Name of the file or directory to find. Can be multiple.
 
- 		@returns The first path found (by respecting the order of `name`s) or `undefined` if none could be found.
 
- 		*/
 
- 		(name: string | string[], options?: findUp.Options): string | undefined;
 
- 		/**
 
- 		Synchronously find a file or directory by walking up parent directories.
 
- 		@param matcher - Called for each directory in the search. Return a path or `findUp.stop` to stop the search.
 
- 		@returns The first path found or `undefined` if none could be found.
 
- 		@example
 
- 		```
 
- 		import path = require('path');
 
- 		import findUp = require('find-up');
 
- 		console.log(findUp.sync(directory => {
 
- 			const hasUnicorns = findUp.sync.exists(path.join(directory, 'unicorn.png'));
 
- 			return hasUnicorns && directory;
 
- 		}, {type: 'directory'}));
 
- 		//=> '/Users/sindresorhus'
 
- 		```
 
- 		*/
 
- 		(matcher: (directory: string) => findUp.Match, options?: findUp.Options): string | undefined;
 
- 		/**
 
- 		Synchronously check if a path exists.
 
- 		@param path - Path to the file or directory.
 
- 		@returns Whether the path exists.
 
- 		@example
 
- 		```
 
- 		import findUp = require('find-up');
 
- 		console.log(findUp.sync.exists('/Users/sindresorhus/unicorn.png'));
 
- 		//=> true
 
- 		```
 
- 		*/
 
- 		exists(path: string): boolean;
 
- 	}
 
- 	/**
 
- 	Check if a path exists.
 
- 	@param path - Path to a file or directory.
 
- 	@returns Whether the path exists.
 
- 	@example
 
- 	```
 
- 	import findUp = require('find-up');
 
- 	(async () => {
 
- 		console.log(await findUp.exists('/Users/sindresorhus/unicorn.png'));
 
- 		//=> true
 
- 	})();
 
- 	```
 
- 	*/
 
- 	exists(path: string): Promise<boolean>;
 
- 	/**
 
- 	Return this in a `matcher` function to stop the search and force `findUp` to immediately return `undefined`.
 
- 	*/
 
- 	readonly stop: findUp.StopSymbol;
 
- };
 
- export = findUp;
 
 
  |