import type { TunableOptions } from "./tunableSchema.js"; import type { Devtools, DevtoolsSnapshot, Tunable } from "./types.js"; export type { AngleUnit, DevtoolsControlKind, DevtoolsOverrides, DiscoverySkip, OverrideApplyDiagnostic, TunableChoice, TunableInterval, TunableOptions, TunableVec2, TunableVec3, TunableVec4, ScanMeta, ScanFieldMeta, NormalizedColor, } from "./tunableSchema.js"; export { CONTROL_SCHEMA_VERSION, OVERRIDES_FORMAT_VERSION, convertAngle, escapePathSegment, formatColor, joinTunablePath, normalizeAngle, normalizeColorValue, parseColor, parseOverridesPayload, splitTunablePath, unescapePathSegment, validateControlValue, } from "./tunableSchema.js"; export type { Devtools, DevtoolsControl, DevtoolsLogEntry, DevtoolsLogLevel, DevtoolsLogs, DevtoolsSnapshot, DiscoveredEntry, FrameRecordSample, FrameStats, LatencyStats, LongFrameEvent, OverrideApplyResult, PhaseStats, RenderSample, SystemProbe, SystemProbeReading, Tunable, TunableAccessor, } from "./types.js"; export { LONG_FRAME_MS } from "./report.js"; export { formatLogMessage } from "./logs.js"; export type { FrameWindow, GlReport, PerfQuality, PerfReport, ProfileEntry, ProfileReport, RenderReport, ReportLogLine, ReportLogs, ReportTelemetry, SceneNodeSource, } from "./report.js"; export type { LogBusCounts, LogBusEntry, LogBusSnapshot } from "./logBus.js"; export declare function createDevtools(): Devtools; export declare const devtools: Devtools; export declare function tunable(name: string, initial: T, options?: TunableOptions): Tunable; export declare function snapshotDevtools(): DevtoolsSnapshot; export declare function measureProfile(name: string, fn: () => T): T; export declare function instrumentLatency(target: T, methods: readonly (keyof T)[], record?: (ms: number) => void): T;