import type { IDomain } from './domain.js'; export interface IGatewayCapabilities { routes: { read: boolean; write: boolean; idempotentSync: boolean; }; domains: { read: boolean; write: boolean; }; certificates: { read: boolean; export: boolean; forceRenew: boolean; }; email: { domains: boolean; inbound: boolean; outbound: boolean; }; remoteIngress: { enabled: boolean; }; dns: { authoritative: boolean; providerManaged: boolean; }; http3: { enabled: boolean; }; } export interface IWorkHosterDomain extends IDomain { capabilities: { canCreateSubdomains: boolean; canManageDnsRecords: boolean; canIssueCertificates: boolean; canHostEmail: boolean; }; } export interface IWorkAppRouteOwnership { workHosterType: 'onebox' | 'cloudly' | 'custom'; workHosterId: string; workAppId: string; hostname: string; } export interface IWorkAppRouteSyncResult { success: boolean; action?: 'created' | 'updated' | 'deleted' | 'unchanged'; routeId?: string; message?: string; }