import { IEquatable } from "./IEquatable";
/**
 * Defines a globally unique identifier (GUID).
 */
export declare class Guid implements IEquatable<Guid> {
    guid: string;
    private _guid;
    /**
     * Initializes a new instance of the Guid class using a Guid value represented by a string.
     * @param {string} guid - A string that contains a valid GUID.
     */
    constructor(guid: string);
    /**
     * Returns a value indicating whether this instance and a specified Guid object represent the same value.
     * @param {Guid} other - A Guid to compare to this instance.
     * @returns {boolean} True if the Guid is equal to this instance; otherwise, false.
     */
    equals(other: Guid): boolean;
    /**
     * Returns a string representation of the value of this instance of a Guid.
     * @returns {string} The value of this Guid, formatted as: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
     */
    toString(): string;
    /**
     * An instance of the Guid structure whose value is all zeros.
     * @returns {Guid} A zero GUID.
     */
    static empty(): Guid;
    /**
     * Initializes a new instance of the Guid with a value that is created from a sequence of random bytes.
     * @returns {Guid} A new GUID.
     */
    static newGuid(): Guid;
    private isValid;
}
