import type { GlobOptions, GlobOptionsWithFileTypesFalse, GlobOptionsWithFileTypesTrue, GlobOptionsWithFileTypesUnset, Results } from './glob.js';
import { Glob } from './glob.js';
import type { GWOFileTypesFalse, GWOFileTypesTrue, GWOFileTypesUnset, MatchStream, Result } from './walker.js';
/**
 * Syncronous form of {@link globStream}. Will read all the matches as fast as
 * you consume them, even all in a single tick if you consume them immediately,
 * but will still respond to backpressure if they're not consumed immediately.
 */
export declare function globStreamSync(pattern: string | string[], options: GlobOptionsWithFileTypesTrue): MatchStream<GWOFileTypesTrue>;
export declare function globStreamSync(pattern: string | string[], options: GlobOptionsWithFileTypesFalse): MatchStream<GWOFileTypesFalse>;
export declare function globStreamSync(pattern: string | string[], options: GlobOptionsWithFileTypesUnset): MatchStream<GWOFileTypesUnset>;
export declare function globStreamSync(pattern: string | string[], options: GlobOptions): MatchStream<GlobOptions>;
/**
 * Return a stream that emits all the strings or `Path` objects and
 * then emits `end` when completed.
 */
export declare function globStream(pattern: string | string[], options: GlobOptionsWithFileTypesFalse): MatchStream<GWOFileTypesFalse>;
export declare function globStream(pattern: string | string[], options: GlobOptionsWithFileTypesTrue): MatchStream<GWOFileTypesTrue>;
export declare function globStream(pattern: string | string[], options?: GlobOptionsWithFileTypesUnset | undefined): MatchStream<GWOFileTypesUnset>;
export declare function globStream(pattern: string | string[], options: GlobOptions): MatchStream<GlobOptions>;
/**
 * Synchronous form of {@link glob}
 */
export declare function globSync(pattern: string | string[], options: GlobOptionsWithFileTypesFalse): Results<GWOFileTypesFalse>;
export declare function globSync(pattern: string | string[], options: GlobOptionsWithFileTypesTrue): Results<GWOFileTypesTrue>;
export declare function globSync(pattern: string | string[], options?: GlobOptionsWithFileTypesUnset | undefined): Results<GWOFileTypesUnset>;
export declare function globSync(pattern: string | string[], options: GlobOptions): Results<GlobOptions>;
/**
 * Perform an asynchronous glob search for the pattern(s) specified. Returns
 * [Path](https://isaacs.github.io/path-scurry/classes/PathBase) objects if the
 * {@link withFileTypes} option is set to `true`. See {@link GlobOptions} for
 * full option descriptions.
 */
export declare function glob(pattern: string | string[], options?: GlobOptionsWithFileTypesUnset | undefined): Promise<Results<GWOFileTypesUnset>>;
export declare function glob(pattern: string | string[], options: GlobOptionsWithFileTypesTrue): Promise<Results<GWOFileTypesTrue>>;
export declare function glob(pattern: string | string[], options: GlobOptionsWithFileTypesFalse): Promise<Results<GWOFileTypesFalse>>;
export declare function glob(pattern: string | string[], options: GlobOptions): Promise<Results<GlobOptions>>;
/**
 * Return an async iterator for walking glob pattern matches.
 */
export declare function globIterate(pattern: string | string[], options?: GlobOptionsWithFileTypesUnset | undefined): AsyncGenerator<Result<GWOFileTypesUnset>, void, void>;
export declare function globIterate(pattern: string | string[], options: GlobOptionsWithFileTypesTrue): AsyncGenerator<Result<GWOFileTypesTrue>, void, void>;
export declare function globIterate(pattern: string | string[], options: GlobOptionsWithFileTypesFalse): AsyncGenerator<Result<GWOFileTypesFalse>, void, void>;
export declare function globIterate(pattern: string | string[], options: GlobOptions): AsyncGenerator<Result<GlobOptions>, void, void>;
/**
 * Return a sync iterator for walking glob pattern matches.
 */
export declare function globIterateSync(pattern: string | string[], options?: GlobOptionsWithFileTypesUnset | undefined): Generator<Result<GWOFileTypesUnset>, void, void>;
export declare function globIterateSync(pattern: string | string[], options: GlobOptionsWithFileTypesTrue): Generator<Result<GWOFileTypesTrue>, void, void>;
export declare function globIterateSync(pattern: string | string[], options: GlobOptionsWithFileTypesFalse): Generator<Result<GWOFileTypesFalse>, void, void>;
export declare function globIterateSync(pattern: string | string[], options: GlobOptions): Generator<Result<GlobOptions>, void, void>;
export { Glob } from './glob.js';
export type { GlobOptions, GlobOptionsWithFileTypesFalse, GlobOptionsWithFileTypesTrue, GlobOptionsWithFileTypesUnset, Result, Results, } from './glob.js';
export { hasMagic } from './has-magic.js';
export type { MatchStream } from './walker.js';
declare const _default: typeof glob & {
    glob: typeof glob;
    globSync: typeof globSync;
    globStream: typeof globStream;
    globStreamSync: typeof globStreamSync;
    globIterate: typeof globIterate;
    globIterateSync: typeof globIterateSync;
    Glob: typeof Glob;
    hasMagic: (pattern: string | string[], options?: GlobOptions) => boolean;
};
export default _default;
