import { Memory } from '../../MemoryFork';
/**
 * A test version of the Memory class used by unit tests.
 */
export declare class TestMemoryFork implements Memory {
    private readonly _fork;
    /**
     * Deletes the value from the original memory.
     * @param {string} path Path to the value to check in the form of `[scope].property`. If scope is omitted, the value is checked in the temporary scope.
     */
    deleteValue(path: string): void;
    /**
     * Checks if the value exists in the original memory.
     * @param {string} path Path to the value to check in the form of `[scope].property`. If scope is omitted, the value is checked in the temporary scope.
     * @returns {boolean} True if the value exists. Otherwise, false.
     */
    hasValue(path: string): boolean;
    /**
     * @template TValue
     * Retrieves the value from the original memory. Otherwise, returns null if value does not exist.
     * @param {string} path Path to the value to check in the form of `[scope].property`. If scope is omitted, the value is checked in the temporary scope.
     * @returns {TValue} Value.
     */
    getValue<TValue = unknown>(path: string): TValue;
    /**
     * Sets the value in the original memory.
     * @param {string} path Path to the value to check in the form of `[scope].property`. If scope is omitted, the value is checked in the temporary scope.
     * @param {unknown} value Value to assign.
     * @returns {void}
     */
    setValue(path: string, value: unknown): void;
    /**
     * @private
     * @param {string} path Path to the value to check in the form of `[scope].property`. If scope is omitted, the value is checked in the temporary scope.
     * @returns {{ scope: string; name: string }} Scope and name.
     */
    private getScopeAndName;
}
//# sourceMappingURL=TestMemoryFork.d.ts.map