feat(companion): add platform bootstrap helper

This commit is contained in:
William Valentin
2026-02-16 18:34:57 -08:00
parent 97afc39e01
commit 4d29c381f7
6 changed files with 60 additions and 1 deletions
+23
View File
@@ -38,6 +38,11 @@ export type SharedStatusInput = Omit<
'platform'
>;
export interface PlatformBootstrapResult {
register: NodeRegisterResult;
capabilities: NodeCapabilitiesResult;
}
export class MacOSCompanionClient {
private readonly runtime: CompanionRuntimeClient;
private readonly nodeId: string;
@@ -70,6 +75,12 @@ export class MacOSCompanionClient {
});
}
async bootstrap(): Promise<PlatformBootstrapResult> {
const register = await this.register();
const capabilities = await this.getCapabilities();
return { register, capabilities };
}
getCapabilities(): Promise<NodeCapabilitiesResult> {
return this.runtime.getNodeCapabilities();
}
@@ -163,6 +174,12 @@ export class IOSCompanionClient {
});
}
async bootstrap(): Promise<PlatformBootstrapResult> {
const register = await this.register();
const capabilities = await this.getCapabilities();
return { register, capabilities };
}
getCapabilities(): Promise<NodeCapabilitiesResult> {
return this.runtime.getNodeCapabilities();
}
@@ -256,6 +273,12 @@ export class AndroidCompanionClient {
});
}
async bootstrap(): Promise<PlatformBootstrapResult> {
const register = await this.register();
const capabilities = await this.getCapabilities();
return { register, capabilities };
}
getCapabilities(): Promise<NodeCapabilitiesResult> {
return this.runtime.getNodeCapabilities();
}