/** * MT5 server catalog types (eaera-mt5 DR-27). * * `Mt5Server` content rows carry the manager endpoint and login, so since * eaera-mt5 DR-27 they are readable by admins only (`mt5:admin`): anonymous * and trader reads of `GET /api/v1/content?type=Mt5Server` get 401. The * catalog is served instead by the public, allowlisted projection * * GET /api/v1/mt5/servers * → { success: true, data: { items: [{ name, status, server_time_offset_seconds }] } } * * (eaera-mt5 `routers/servers/{routes,projection}.py`). The CMS may camelize * the payload (`serverTimeOffsetSeconds`), so both casings are read. */ /** One catalog row — everything an anonymous caller may know about a server. */ export interface IMt5ServerCatalogEntry { /** Canonical server name (FK target of `Mt5Account.data.serverName`). */ name: string; /** Server lifecycle status (`active`, `degraded`, …), when reported. */ status: string | null; /** Broker-side UTC offset in seconds (chart timezone). */ serverTimeOffsetSeconds: number; } export interface IDefaultServerResolution { name: string | null; /** True when no catalog row resolved and the env fallback was used. */ usedFallback: boolean; } /** Catalog projection envelope. */ export interface IMt5ServerCatalogResponse { success: boolean; data?: { items?: unknown; }; } //# sourceMappingURL=mt5.type.d.ts.map