import type { NobjcObject } from "objc-js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _JSValue } from "./JSValue.js";
export declare class _JSManagedValue extends _NSObject {
    static alloc(): _JSManagedValue;
    static new(): _JSManagedValue;
    init(): _JSManagedValue;
    /**
     * @method @abstract Create a JSManagedValue from a JSValue. @result The new JSManagedValue.
     */
    static managedValueWithValue$(value: _JSValue): _JSManagedValue;
    static managedValueWithValue$andOwner$(value: _JSValue, owner: NobjcObject): _JSManagedValue;
    /** @method @abstract Create a JSManagedValue. @result The new JSManagedValue. */
    initWithValue$(value: _JSValue): _JSManagedValue;
    /**
     * @property @abstract Get the JSValue from the JSManagedValue. @result The corresponding JSValue for this JSManagedValue or nil if the JSValue has been collected.
     */
    value(): _JSValue;
}
