/**
 * @file Path predicates — `is*` checks for path shape and kind. Split out of
 *   `paths/normalize.ts` for file-size hygiene. Pure boolean predicates over
 *   paths and character codes.
 *
 *   - `isAbsolute`, `isRelative` — root-anchoring shape
 *   - `isPath` — file-path vs package-spec vs URL discriminator
 *   - `isNodeModules`, `isUnixPath` — content-pattern checks
 *   - `isPathSeparator`, `isWindowsDeviceRoot` — char-code primitives
 */
/**
 * Check if a path is absolute.
 *
 * Handles both POSIX (`/...`) and Windows (drive-letter, UNC, device) absolute
 * path shapes.
 *
 * @example
 *   ;```typescript
 *   isAbsolute('/home/user') // true
 *   isAbsolute('C:\\Windows') // true on Windows
 *   isAbsolute('../relative') // false
 *   ```
 *
 * @param {string | Buffer | URL} pathLike - The path to check.
 *
 * @returns {boolean} `true` if absolute, `false` otherwise
 */
export declare function isAbsolute(pathLike: string | Buffer | URL): boolean;
/**
 * Check if a path contains a `node_modules` directory segment.
 *
 * Matches `node_modules` only as a complete path segment.
 *
 * @example
 *   ;```typescript
 *   isNodeModules('/project/node_modules/package') // true
 *   isNodeModules('/src/my_node_modules_backup') // false
 *   ```
 *
 * @param {string | Buffer | URL} pathLike - The path to check.
 *
 * @returns {boolean} `true` if the path contains `node_modules`
 */
export declare function isNodeModules(pathLike: string | Buffer | URL): boolean;
/**
 * Check if a value is a valid file path (absolute or relative).
 *
 * Distinguishes between file paths and other string formats like package names,
 * URLs, or bare module specifiers.
 *
 * @example
 *   ;```typescript
 *   isPath('/absolute/path') // true
 *   isPath('./relative/path') // true
 *   isPath('@scope/name/subpath') // true
 *   isPath('lodash') // false
 *   isPath('http://example.com') // false
 *   ```
 *
 * @param {string | Buffer | URL} pathLike - The value to check.
 *
 * @returns {boolean} `true` if the value is a valid file path
 */
export declare function isPath(pathLike: string | Buffer | URL): boolean;
/**
 * Check if a character code is a path separator (`/` or `\`).
 *
 * @example
 *   ;```typescript
 *   isPathSeparator(47) // true — '/'
 *   isPathSeparator(92) // true — '\'
 *   isPathSeparator(65) // false — 'A'
 *   ```
 *
 * @param {number} code - The character code to check.
 *
 * @returns {boolean} `true` if separator
 */
export declare function isPathSeparator(code: number): boolean;
/**
 * Check if a path is relative (i.e., not absolute).
 *
 * Empty strings are treated as relative.
 *
 * @example
 *   ;```typescript
 *   isRelative('./src/index.js') // true
 *   isRelative('src/file.js') // true
 *   isRelative('/home/user') // false
 *   ```
 *
 * @param {string | Buffer | URL} pathLike - The path to check.
 *
 * @returns {boolean} `true` if the path is relative
 */
export declare function isRelative(pathLike: string | Buffer | URL): boolean;
/**
 * Check if a path uses MSYS/Git Bash Unix-style drive letter notation.
 *
 * Detects paths in the format `/c/...` where a single letter after the leading
 * slash represents a Windows drive letter.
 *
 * @example
 *   ;```typescript
 *   isUnixPath('/c/tools/bin') // true
 *   isUnixPath('/tmp/build') // false
 *   isUnixPath('C:/Windows') // false
 *   ```
 *
 * @param {string | Buffer | URL} pathLike - The path to check.
 *
 * @returns {boolean} `true` if the path uses MSYS drive letter notation
 */
export declare function isUnixPath(pathLike: string | Buffer | URL): boolean;
/**
 * Check if a character code is a Windows device root letter (A-Z / a-z).
 *
 * @example
 *   ;```typescript
 *   isWindowsDeviceRoot(67) // true  — 'C'
 *   isWindowsDeviceRoot(99) // true  — 'c'
 *   isWindowsDeviceRoot(58) // false — ':'
 *   ```
 *
 * @param {number} code - The character code to check.
 *
 * @returns {boolean} `true` if valid drive-letter code
 */
export declare function isWindowsDeviceRoot(code: number): boolean;
