Skip to content

Variable: ConfigNamespace

Makaio Framework


Makaio Framework / contracts/config / ConfigNamespace

const ConfigNamespace: BusNamespace<"config", SubjectRecordFromSchemaRecord<{ get: { request: ZodObject<{ }, $strip>; response: ZodObject<{ config: ZodObject<{ $schema: ZodDefault<ZodLiteral<"makaio/config/v1">>; bus: ZodOptional<ZodObject<{ remote: …; }, $strip>>; features: ZodOptional<ZodObject<{ voiceBridge: …; }, $strip>>; fileWatcher: ZodOptional<ZodObject<{ backend: …; }, $strip>>; mode: ZodDefault<ZodEnum<{ hybrid: …; local: …; remote: …; }>>; relay: ZodOptional<ZodObject<{ autoReconnect: …; heartbeatInterval: …; maxReconnectAttempts: …; token: …; url: …; }, $strip>>; role: ZodDefault<ZodEnum<{ main-dev-machine: …; server: …; }>>; }, $strip>; }, $strip>; }; update: { request: ZodObject<{ config: ZodObject<{ $schema: ZodDefault<ZodLiteral<"makaio/config/v1">>; bus: ZodOptional<ZodObject<{ remote: …; }, $strip>>; features: ZodOptional<ZodObject<{ voiceBridge: …; }, $strip>>; fileWatcher: ZodOptional<ZodObject<{ backend: …; }, $strip>>; mode: ZodDefault<ZodEnum<{ hybrid: …; local: …; remote: …; }>>; relay: ZodOptional<ZodObject<{ autoReconnect: …; heartbeatInterval: …; maxReconnectAttempts: …; token: …; url: …; }, $strip>>; role: ZodDefault<ZodEnum<{ main-dev-machine: …; server: …; }>>; }, $strip>; }, $strip>; response: ZodObject<{ success: ZodBoolean; }, $strip>; }; }>, {[key: string]: object; }, { get: { request: ZodObject<{ }, $strip>; response: ZodObject<{ config: ZodObject<{ $schema: ZodDefault<ZodLiteral<"makaio/config/v1">>; bus: ZodOptional<ZodObject<{ remote: ZodOptional<…>; }, $strip>>; features: ZodOptional<ZodObject<{ voiceBridge: ZodDefault<…>; }, $strip>>; fileWatcher: ZodOptional<ZodObject<{ backend: ZodDefault<…>; }, $strip>>; mode: ZodDefault<ZodEnum<{ hybrid: "hybrid"; local: "local"; remote: "remote"; }>>; relay: ZodOptional<ZodObject<{ autoReconnect: ZodDefault<…>; heartbeatInterval: ZodDefault<…>; maxReconnectAttempts: ZodDefault<…>; token: ZodOptional<…>; url: ZodOptional<…>; }, $strip>>; role: ZodDefault<ZodEnum<{ main-dev-machine: "main-dev-machine"; server: "server"; }>>; }, $strip>; }, $strip>; }; update: { request: ZodObject<{ config: ZodObject<{ $schema: ZodDefault<ZodLiteral<"makaio/config/v1">>; bus: ZodOptional<ZodObject<{ remote: ZodOptional<…>; }, $strip>>; features: ZodOptional<ZodObject<{ voiceBridge: ZodDefault<…>; }, $strip>>; fileWatcher: ZodOptional<ZodObject<{ backend: ZodDefault<…>; }, $strip>>; mode: ZodDefault<ZodEnum<{ hybrid: "hybrid"; local: "local"; remote: "remote"; }>>; relay: ZodOptional<ZodObject<{ autoReconnect: ZodDefault<…>; heartbeatInterval: ZodDefault<…>; maxReconnectAttempts: ZodDefault<…>; token: ZodOptional<…>; url: ZodOptional<…>; }, $strip>>; role: ZodDefault<ZodEnum<{ main-dev-machine: "main-dev-machine"; server: "server"; }>>; }, $strip>; }, $strip>; response: ZodObject<{ success: ZodBoolean; }, $strip>; }; }>

Defined in: ../../../packages/contracts/src/config/config-namespace.ts:17

Config namespace registration. Registers the ‘config’ namespace with the bus.

// Get current config
const result = await bus.request(ConfigSubjects.get, {});
console.log(result.config);
// Update config
await bus.request(ConfigSubjects.update, { config: newConfig });