import { CPointer, CVizzu, CString } from '../cvizzu.types'; import { ObjectRegistry, CPointerClosure } from './objregistry.js'; export declare class CEnv { protected _wasm: CVizzu; protected _objectRegistry: ObjectRegistry; constructor(wasm: CVizzu, objectRegistry: ObjectRegistry); protected _toCString(str: string): CString; protected _fromCString(str: CString): string; protected _getStatic(getter: () => CPointer): CPointerClosure; protected _callStatic(f: (...params: T) => R): (...params: T) => R; cObjectParams(): readonly [CVizzu, ObjectRegistry]; } export declare class CObject extends CEnv { getId: CPointerClosure; constructor(getId: CPointerClosure, cenv: CEnv); protected _get(getter: (self: CPointer) => CPointer): CPointerClosure; protected _call(f: (cSelf: CPointer, ...params: T) => R): (...params: T) => R; } export declare class CManagedObject extends CObject { constructor(getId: CPointerClosure, cenv: CEnv); free(): void; }