import type { HasChanged, PropertyDeclaration, PropertyDeclarationMap, PropertyValues } from './types.js'; export type * from './types.js'; export declare const notEqual: HasChanged; export type UpdatedCall = (changed: PropertyValues) => Promise | void; export declare class ReactiveObject extends Object { #private; static elementProperties: PropertyDeclarationMap; static createProperty(name: PropertyKey, options?: PropertyDeclaration): void; protected static getPropertyDescriptor(name: PropertyKey, key: string | symbol, options: PropertyDeclaration): PropertyDescriptor | undefined; static getPropertyOptions(name: PropertyKey): PropertyDeclaration; private __updatePromise; isUpdatePending: boolean; hasUpdated: boolean; private _$changedProperties; constructor(defaultState?: Partial); private resolvedPromise; _initialize(): void; requestUpdate(name?: PropertyKey, oldValue?: unknown, options?: PropertyDeclaration): void; __enqueueUpdate(): Promise; protected scheduleUpdate(): void | Promise; protected performUpdate(): void | Promise; protected willUpdate(_changedProperties: PropertyValues): void; _$didUpdate(changedProperties: PropertyValues): void; private __markUpdated; get updateComplete(): Promise; protected getUpdateComplete(): Promise; protected shouldUpdate(_changedProperties: PropertyValues): boolean; /** * Used by extensions if they want to run some code before update(). * This allows users to write code in update() without the * need to use super.update(). */ protected __update(_changedProperties: PropertyValues): void; protected update(_changedProperties: PropertyValues): void; protected __updated(_changedProperties: PropertyValues): Promise; protected updated(_changedProperties: PropertyValues): Promise | void; protected __firstUpdated(_changedProperties: PropertyValues): void; protected firstUpdated(_changedProperties: PropertyValues): void; protected __postUpdated(_changedProperties: PropertyValues): void; protected postUpdated(_diff: Partial): void; getLocalStatePropertyNames(): string[]; getLineageStatePropertyNames(): PropertyKey[]; lineageToJSON: boolean; toJSON(options?: { removeUndefinedValues: boolean; }): Interface; fromObject(state: Partial): void; } export { state } from './decorators/state.js'; //# sourceMappingURL=reactive-object.d.ts.map