feat(companion): complete platform stream helper parity

This commit is contained in:
William Valentin
2026-02-16 19:24:54 -08:00
parent 6018db0dd3
commit a76e3e03dc
4 changed files with 130 additions and 3 deletions
+84
View File
@@ -225,6 +225,18 @@ export class MacOSCompanionClient {
return this.runtime.subscribeAgentStream(handler);
}
subscribeAgentTyping<TData = unknown>(
handler: CompanionTypedEventHandler<TData>,
): () => void {
return this.runtime.subscribeAgentTyping(handler);
}
subscribeContextWarning<TData = unknown>(
handler: CompanionTypedEventHandler<TData>,
): () => void {
return this.runtime.subscribeContextWarning(handler);
}
waitForAgentStream<TData = unknown>(options?: {
timeoutMs?: number;
predicate?: CompanionEventPredicate<TData>;
@@ -233,6 +245,22 @@ export class MacOSCompanionClient {
return this.runtime.waitForAgentStream(options);
}
waitForAgentTyping<TData = unknown>(options?: {
timeoutMs?: number;
predicate?: CompanionEventPredicate<TData>;
signal?: AbortSignal;
}): Promise<TData> {
return this.runtime.waitForAgentTyping(options);
}
waitForContextWarning<TData = unknown>(options?: {
timeoutMs?: number;
predicate?: CompanionEventPredicate<TData>;
signal?: AbortSignal;
}): Promise<TData> {
return this.runtime.waitForContextWarning(options);
}
private resolveSessionId(sessionId?: string): string {
const resolved = sessionId ?? this.defaultSessionId;
if (!resolved) {
@@ -390,6 +418,18 @@ export class IOSCompanionClient {
return this.runtime.subscribeAgentStream(handler);
}
subscribeAgentTyping<TData = unknown>(
handler: CompanionTypedEventHandler<TData>,
): () => void {
return this.runtime.subscribeAgentTyping(handler);
}
subscribeContextWarning<TData = unknown>(
handler: CompanionTypedEventHandler<TData>,
): () => void {
return this.runtime.subscribeContextWarning(handler);
}
waitForAgentStream<TData = unknown>(options?: {
timeoutMs?: number;
predicate?: CompanionEventPredicate<TData>;
@@ -398,6 +438,22 @@ export class IOSCompanionClient {
return this.runtime.waitForAgentStream(options);
}
waitForAgentTyping<TData = unknown>(options?: {
timeoutMs?: number;
predicate?: CompanionEventPredicate<TData>;
signal?: AbortSignal;
}): Promise<TData> {
return this.runtime.waitForAgentTyping(options);
}
waitForContextWarning<TData = unknown>(options?: {
timeoutMs?: number;
predicate?: CompanionEventPredicate<TData>;
signal?: AbortSignal;
}): Promise<TData> {
return this.runtime.waitForContextWarning(options);
}
private resolveSessionId(sessionId?: string): string {
const resolved = sessionId ?? this.defaultSessionId;
if (!resolved) {
@@ -553,6 +609,18 @@ export class AndroidCompanionClient {
return this.runtime.subscribeAgentStream(handler);
}
subscribeAgentTyping<TData = unknown>(
handler: CompanionTypedEventHandler<TData>,
): () => void {
return this.runtime.subscribeAgentTyping(handler);
}
subscribeContextWarning<TData = unknown>(
handler: CompanionTypedEventHandler<TData>,
): () => void {
return this.runtime.subscribeContextWarning(handler);
}
waitForAgentStream<TData = unknown>(options?: {
timeoutMs?: number;
predicate?: CompanionEventPredicate<TData>;
@@ -561,6 +629,22 @@ export class AndroidCompanionClient {
return this.runtime.waitForAgentStream(options);
}
waitForAgentTyping<TData = unknown>(options?: {
timeoutMs?: number;
predicate?: CompanionEventPredicate<TData>;
signal?: AbortSignal;
}): Promise<TData> {
return this.runtime.waitForAgentTyping(options);
}
waitForContextWarning<TData = unknown>(options?: {
timeoutMs?: number;
predicate?: CompanionEventPredicate<TData>;
signal?: AbortSignal;
}): Promise<TData> {
return this.runtime.waitForContextWarning(options);
}
private resolveSessionId(sessionId?: string): string {
const resolved = sessionId ?? this.defaultSessionId;
if (!resolved) {