import { $ as AbstractApplicationType, A as CoreApp, B as getDeployedConfigModuleRef, C as parseProject, D as Studio, E as LocalStudioApplicationManifest, F as parseCoreApplication, G as brandOrganizationId, H as Organization, I as APP_TYPE_NAME, J as CanvasApplication, K as parseOrganization, L as ActiveConfig, M as ExternalCoreApplication, N as InternalCoreApplication, O as Workspace, P as LocalCoreApplicationManifest, Q as AbstractApplication, R as CONFIG_MODULE_EXPOSE, S as brandProjectId, T as InternalStudioApplication, U as OrganizationId, V as RemoteModule, W as OrganizationMember, X as brandCanvasId, Y as CanvasId, Z as parseCanvas, _ as StudioApplication, a as Installation, at as DockGroup, b as ProjectId, c as parseInstalledApplication, ct as InterfaceSchema, d as ApplicationId, dt as LocalInterfaceSchema, et as IconDescriptor, f as BrettApplication, ft as Panel, g as brandApplicationId, h as InternalApplication, ht as getInitials, i as findDeployedConfigRef, it as ResolvedInterfacesOf, j as CoreApplication, k as parseStudioApplication, l as ActiveDeployment, lt as InterfacesOf, m as ExternalApplication, mt as TileSize, n as ApplicationList, nt as ResolvedInterface, o as InstallationId, ot as Interface, p as BrettWorkspace, pt as PanelComponent, q as Canvas, r as MediaLibraryApplication, rt as ResolvedInterfaceOfType, s as InstalledApplication, st as InterfaceOfType, t as Application, tt as LocalApplication, u as ApplicationBase, ut as LocalInterface, v as StudioWorkspace, w as ExternalStudioApplication, x as ProjectMember, y as Project, z as LocalAppConfig } from "./application-list-Dh3Y9exX.js"; import { n as RemoteModuleRenderOptions, r as ResolvedConfig, t as Config } from "./config-BjBi67kU.js"; import { a as getSanityEnv, c as parseLocalApplications, i as getSanityDomain, n as getApiHost, o as createCoreApplicationFromLocal, r as getApplicationDomain, s as createStudioApplicationFromLocal, t as isSanityClientError } from "./index-C15YDHgO.js"; /** * Log levels in order of verbosity (least to most) * - none: Silent * - error: Critical failures that prevent operation * - warn: Issues that may cause problems but don't stop execution * - info: High-level informational messages (default) * - debug: Detailed debugging information (maintainer level) * - trace: Very detailed tracing — sets `internal: true` on context * @public */ type LogLevel = "none" | "error" | "warn" | "info" | "debug"; /** * Namespaces organize logs by functional domain. * @internal */ type LogNamespace = string; type LogContext = { [key: string]: unknown; }; /** * @public */ interface Logger { error: (message: string, context?: LogContext) => void; warn: (message: string, context?: LogContext) => void; info: (message: string, context?: LogContext) => void; debug: (message: string, context?: LogContext) => void; child: (domain: string, context?: LogContext) => Logger; } interface LoggerOptions { namespace?: LogNamespace; context?: LogContext; logLevel?: LogLevel; } /** * Creates a leveled logger with an optional namespace prefix and bound * context. Calls below the configured `logLevel` are suppressed; `"none"` * silences the logger entirely. * * Use {@link Logger.child} to derive a sub-logger with an extended namespace * (e.g. `parent:domain`) that inherits the parent's level and merges its * bound context. * * @param options - Logger configuration. * @param options.namespace - Prepended to every message in `[brackets]`. * @param options.context - Bound context merged with per-call context. * Per-call keys win on conflict. * @param options.logLevel - Maximum verbosity to emit. Default `"info"`. * * @example * ```ts * const log = createLogger({ namespace: "checkout", logLevel: "debug" }); * log.info("placed", { orderId: "abc" }); * // → [checkout] placed { orderId: "abc" } * * const auth = log.child("auth", { tenant: "acme" }); * auth.warn("token expiring"); * // → [checkout:auth] token expiring { tenant: "acme" } * ``` * * @public */ declare function createLogger({ namespace, context: baseContext, logLevel }?: LoggerOptions): Logger; /** * Shared workbench logger instance. Use this from both the workbench host * and its remotes so lifecycle and diagnostic logs appear under a single * namespace. * * @public */ declare const logger: Logger; /** * Joins multiple path segments into a single path string. * Handles null, undefined, and URL objects gracefully. * * @public * @param paths - An array of path segments to join. * @returns A single joined path string. */ declare const joinUrlPaths: (...paths: Array) => string; export { APP_TYPE_NAME, AbstractApplication, AbstractApplicationType, ActiveConfig, ActiveDeployment, Application, ApplicationBase, ApplicationId, ApplicationList, BrettApplication, BrettWorkspace, CONFIG_MODULE_EXPOSE, Canvas, CanvasApplication, CanvasId, type Config, CoreApp, CoreApplication, type DockGroup, ExternalApplication, ExternalCoreApplication, ExternalStudioApplication, IconDescriptor, Installation, InstallationId, InstalledApplication, type Interface, type InterfaceOfType, InterfaceSchema, type InterfacesOf, InternalApplication, InternalCoreApplication, InternalStudioApplication, LocalAppConfig, LocalApplication, LocalCoreApplicationManifest, type LocalInterface, LocalInterfaceSchema, LocalStudioApplicationManifest, LogLevel, LogNamespace, Logger, MediaLibraryApplication, Organization, OrganizationId, OrganizationMember, type Panel, type PanelComponent, Project, ProjectId, ProjectMember, RemoteModule, type RemoteModuleRenderOptions, type ResolvedConfig, ResolvedInterface, ResolvedInterfaceOfType, ResolvedInterfacesOf, Studio, StudioApplication, StudioWorkspace, type TileSize, Workspace, brandApplicationId, brandCanvasId, brandOrganizationId, brandProjectId, createCoreApplicationFromLocal, createLogger, createStudioApplicationFromLocal, findDeployedConfigRef, getApiHost, getApplicationDomain, getDeployedConfigModuleRef, getInitials, getSanityDomain, getSanityEnv, isSanityClientError, joinUrlPaths, logger, parseCanvas, parseCoreApplication, parseInstalledApplication, parseLocalApplications, parseOrganization, parseProject, parseStudioApplication }; //# sourceMappingURL=core.d.ts.map