/**
 * Represents '/' separated path.
 * Contains utility methods to work with such paths.
 */
export declare class Path {
    private readonly _path;
    private constructor();
    /**
     * Creates a {@link Path} instance from a string or an array of path segments. A path segment
     * is the texts between '/' characters.
     *
     * @param path - The path string or array of strings.
     * @returns A {@link Path} instance if the path is valid, otherwise undefined. A path is valid if it has at least
     * one path segment.
     */
    static from(path: string | string[]): Path | undefined;
    /**
     * Gets the level of the path, which is the number of path segments.
     */
    get level(): number;
    /**
     * Gets the parent path, if it exists.
     *
     * @returns The parent {@link Path} instance, or undefined if the current path has no parent.
     */
    get parent(): Path | undefined;
    /**
     * Checks if the current path is equal to the specified path.
     *
     * @param other - The path to compare.
     * @param options - The options for string comparison. Default is { sensitivity: 'accent' }.
     * @returns True if the paths are equal, false otherwise.
     */
    equals(other: string | Path, options?: Intl.CollatorOptions): boolean;
    /**
     * Converts the path to a string representation.
     *
     * @returns The path as a string.
     */
    toString(): string;
}
/**
 * Utility function to quicly create a {@link Path} instance from a string or an array of path segments.
 * @param path
 * @returns A {@link Path} instance if the path is valid, otherwise undefined. A path is valid if it has at least
 * one path segment.
 */
export declare function path(path: string | string[]): Path | undefined;
//# sourceMappingURL=Path.d.ts.map