import { Descriptor, ObjectValue, UndefinedValue, NullValue, Value, BooleanValue, type PropertyKeyValue, type CanBeNativeSteps } from '../value.mts'; import type { ValueEvaluator } from '../evaluator.mts'; import { type FunctionObject, type Intrinsics } from './all.mts'; export interface OrdinaryObject extends ObjectValue { Prototype: ObjectValue | NullValue; Extensible: BooleanValue; } export declare function isOrdinaryObject(value: Value): value is OrdinaryObject; export type ExoticObject = ObjectValue; export declare function OrdinaryGetPrototypeOf(O: OrdinaryObject): NullValue | ObjectValue; export declare function OrdinarySetPrototypeOf(O: OrdinaryObject, V: ObjectValue | NullValue): BooleanValue | BooleanValue; export declare function OrdinaryIsExtensible(O: OrdinaryObject): BooleanValue; export declare function OrdinaryPreventExtensions(O: OrdinaryObject): BooleanValue; export declare function OrdinaryGetOwnProperty(O: ObjectValue, P: PropertyKeyValue): Descriptor | UndefinedValue; export declare function OrdinaryDefineOwnProperty(O: ObjectValue, P: PropertyKeyValue, Desc: Descriptor): ValueEvaluator; /** https://tc39.es/ecma262/#sec-iscompatiblepropertydescriptor */ export declare function IsCompatiblePropertyDescriptor(Extensible: BooleanValue, Desc: Descriptor, Current: UndefinedValue | Descriptor): BooleanValue | BooleanValue; export declare function ValidateAndApplyPropertyDescriptor(O: ObjectValue | UndefinedValue, P: PropertyKeyValue | UndefinedValue, extensible: BooleanValue, Desc: Descriptor, current: UndefinedValue | Descriptor): BooleanValue | BooleanValue; export declare function OrdinaryHasProperty(O: ObjectValue, P: PropertyKeyValue): ValueEvaluator; export declare function OrdinaryGet(O: ObjectValue, P: PropertyKeyValue, Receiver: Value): ValueEvaluator; export declare function OrdinarySet(O: ObjectValue, P: PropertyKeyValue, V: Value, Receiver: Value): Generator>, import("#self").EvaluatorNextType>; export declare function OrdinarySetWithOwnDescriptor(O: ObjectValue, P: PropertyKeyValue, V: Value, Receiver: Value, ownDesc: Descriptor | UndefinedValue): ValueEvaluator; export declare function OrdinaryDelete(O: ObjectValue, P: PropertyKeyValue): ValueEvaluator; export declare function OrdinaryOwnPropertyKeys(O: ObjectValue): PropertyKeyValue[]; /** https://tc39.es/ecma262/#sec-ordinaryobjectcreate */ export declare function OrdinaryObjectCreate(proto: ObjectValue | NullValue, additionalInternalSlotsList?: readonly T[]): OrdinaryObject; export declare namespace OrdinaryObjectCreate { var from: (object: Record, proto?: ObjectValue | NullValue) => OrdinaryObject; } export declare function OrdinaryCreateFromConstructor(constructor: FunctionObject, intrinsicDefaultProto: keyof Intrinsics, internalSlotsList?: readonly T[]): ValueEvaluator; export declare function GetPrototypeFromConstructor(constructor: FunctionObject, intrinsicDefaultProto: keyof Intrinsics): ValueEvaluator; //# sourceMappingURL=objects.d.mts.map