17 lines
705 B
TypeScript
17 lines
705 B
TypeScript
import type { ConnectionTransport } from '../../application/connections/connection-probe.js';
|
|
import type { UpstreamSessionClientOptions } from '../../application/connections/upstream-session-client.js';
|
|
import { SafeUpstreamGateway, type SafeUpstreamTransport } from './safe-upstream-gateway.js';
|
|
|
|
export interface SafeControlPlaneUpstream extends ConnectionTransport {
|
|
request: UpstreamSessionClientOptions['request'];
|
|
}
|
|
export function createSafeControlPlaneUpstream(
|
|
transport: SafeUpstreamTransport,
|
|
): SafeControlPlaneUpstream {
|
|
const gateway = new SafeUpstreamGateway({ transport });
|
|
return {
|
|
get: (url) => transport.get(url),
|
|
request: (request) => gateway.request(request),
|
|
};
|
|
}
|