@hashbrownai/core
Version:
Runtime helpers for Hashbrown AI
42 lines • 1.74 kB
TypeScript
import { type ExperimentalChromeLocalTransportOptions } from './experimental-chrome-local-transport';
import { type ExperimentalEdgeLocalTransportOptions } from './experimental-edge-local-transport';
import { type DetectionResult, type ModelSpecFactory } from './model-spec';
import { type TransportFactory, type TransportRequest, type TransportResponse } from './transport';
/**
* Supported local prompt adapters.
* @alpha
*/
export type LocalPromptAdapterName = 'chrome-local' | 'edge-local';
type ExperimentalLocalTransportEvents = ExperimentalChromeLocalTransportOptions['events'];
/**
* Configuration for the experimental local transport delegator.
* @alpha
*/
export interface ExperimentalLocalTransportOptions {
chrome?: ExperimentalChromeLocalTransportOptions;
edge?: ExperimentalEdgeLocalTransportOptions;
events?: ExperimentalLocalTransportEvents;
order?: LocalPromptAdapterName[];
}
/**
* Adapter contract for local prompt transports.
* @alpha
*/
export interface LocalPromptAdapter {
readonly name: LocalPromptAdapterName;
detect(request?: TransportRequest): Promise<DetectionResult>;
send(request: TransportRequest): Promise<TransportResponse>;
teardown?(): void | Promise<void>;
}
/**
* Model spec factory that delegates to available local prompt adapters.
* @alpha
*/
export declare function experimental_local(userOptions?: ExperimentalLocalTransportOptions): ModelSpecFactory;
/**
* Builds a TransportFactory that delegates to local prompt adapters.
* @alpha
*/
export declare function createDelegatingTransport(adaptersOrOptions?: LocalPromptAdapter[] | ExperimentalLocalTransportOptions): TransportFactory;
export {};
//# sourceMappingURL=experimental-local-transport.d.ts.map