@omnicross/core 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/NOTICE +57 -0
- package/README.md +15 -0
- package/dist/ApiKeyPoolService-BmMkau07.d.cts +170 -0
- package/dist/ApiKeyPoolService-BmMkau07.d.ts +170 -0
- package/dist/ProviderProxy-f_8ziIhW.d.cts +120 -0
- package/dist/ProviderProxy-vjt8sQQk.d.ts +120 -0
- package/dist/SubscriptionAuthSource-Cr4fVEYY.d.cts +264 -0
- package/dist/SubscriptionAuthSource-D89zmiSS.d.ts +264 -0
- package/dist/auth/GeminiCodeAssistProjectResolver.cjs +218 -0
- package/dist/auth/GeminiCodeAssistProjectResolver.d.cts +68 -0
- package/dist/auth/GeminiCodeAssistProjectResolver.d.ts +68 -0
- package/dist/auth/GeminiCodeAssistProjectResolver.js +189 -0
- package/dist/completion/ApiKeyPoolService.cjs +331 -0
- package/dist/completion/ApiKeyPoolService.d.cts +2 -0
- package/dist/completion/ApiKeyPoolService.d.ts +2 -0
- package/dist/completion/ApiKeyPoolService.js +306 -0
- package/dist/completion.cjs +4027 -0
- package/dist/completion.d.cts +17 -0
- package/dist/completion.d.ts +17 -0
- package/dist/completion.js +3983 -0
- package/dist/index-BTSmc9Sm.d.ts +645 -0
- package/dist/index-DXazdTzZ.d.cts +645 -0
- package/dist/index.cjs +10428 -0
- package/dist/index.d.cts +128 -0
- package/dist/index.d.ts +128 -0
- package/dist/index.js +10339 -0
- package/dist/outbound-api/subscriptionRegistryPort.cjs +38 -0
- package/dist/outbound-api/subscriptionRegistryPort.d.cts +73 -0
- package/dist/outbound-api/subscriptionRegistryPort.d.ts +73 -0
- package/dist/outbound-api/subscriptionRegistryPort.js +12 -0
- package/dist/outbound-api.cjs +5264 -0
- package/dist/outbound-api.d.cts +320 -0
- package/dist/outbound-api.d.ts +320 -0
- package/dist/outbound-api.js +5218 -0
- package/dist/pipeline/SubscriptionAuthSource.cjs +131 -0
- package/dist/pipeline/SubscriptionAuthSource.d.cts +3 -0
- package/dist/pipeline/SubscriptionAuthSource.d.ts +3 -0
- package/dist/pipeline/SubscriptionAuthSource.js +103 -0
- package/dist/pipeline/SubscriptionAuthStrategy.cjs +18 -0
- package/dist/pipeline/SubscriptionAuthStrategy.d.cts +61 -0
- package/dist/pipeline/SubscriptionAuthStrategy.d.ts +61 -0
- package/dist/pipeline/SubscriptionAuthStrategy.js +0 -0
- package/dist/ports/gemini-code-assist-resolver.cjs +38 -0
- package/dist/ports/gemini-code-assist-resolver.d.cts +26 -0
- package/dist/ports/gemini-code-assist-resolver.d.ts +26 -0
- package/dist/ports/gemini-code-assist-resolver.js +12 -0
- package/dist/ports.cjs +18 -0
- package/dist/ports.d.cts +15 -0
- package/dist/ports.d.ts +15 -0
- package/dist/ports.js +0 -0
- package/dist/provider-proxy/ingress/providerProxyShared.cjs +2958 -0
- package/dist/provider-proxy/ingress/providerProxyShared.d.cts +77 -0
- package/dist/provider-proxy/ingress/providerProxyShared.d.ts +77 -0
- package/dist/provider-proxy/ingress/providerProxyShared.js +2925 -0
- package/dist/provider-proxy/matchText.cjs +73 -0
- package/dist/provider-proxy/matchText.d.cts +47 -0
- package/dist/provider-proxy/matchText.d.ts +47 -0
- package/dist/provider-proxy/matchText.js +45 -0
- package/dist/provider-proxy/types.cjs +18 -0
- package/dist/provider-proxy/types.d.cts +12 -0
- package/dist/provider-proxy/types.d.ts +12 -0
- package/dist/provider-proxy/types.js +0 -0
- package/dist/provider-proxy.cjs +4667 -0
- package/dist/provider-proxy.d.cts +69 -0
- package/dist/provider-proxy.d.ts +69 -0
- package/dist/provider-proxy.js +4636 -0
- package/dist/serializeError.cjs +82 -0
- package/dist/serializeError.d.cts +24 -0
- package/dist/serializeError.d.ts +24 -0
- package/dist/serializeError.js +57 -0
- package/dist/sse-parser.cjs +456 -0
- package/dist/sse-parser.d.cts +143 -0
- package/dist/sse-parser.d.ts +143 -0
- package/dist/sse-parser.js +430 -0
- package/dist/transformer/TransformerChainExecutor.cjs +321 -0
- package/dist/transformer/TransformerChainExecutor.d.cts +104 -0
- package/dist/transformer/TransformerChainExecutor.d.ts +104 -0
- package/dist/transformer/TransformerChainExecutor.js +294 -0
- package/dist/transformer/TransformerService.cjs +290 -0
- package/dist/transformer/TransformerService.d.cts +138 -0
- package/dist/transformer/TransformerService.d.ts +138 -0
- package/dist/transformer/TransformerService.js +265 -0
- package/dist/transformer/transformers/GeminiCodeAssistTransformer.cjs +1115 -0
- package/dist/transformer/transformers/GeminiCodeAssistTransformer.d.cts +102 -0
- package/dist/transformer/transformers/GeminiCodeAssistTransformer.d.ts +102 -0
- package/dist/transformer/transformers/GeminiCodeAssistTransformer.js +1085 -0
- package/dist/transformer/transformers/GeminiTransformer.cjs +1013 -0
- package/dist/transformer/transformers/GeminiTransformer.d.cts +70 -0
- package/dist/transformer/transformers/GeminiTransformer.d.ts +70 -0
- package/dist/transformer/transformers/GeminiTransformer.js +986 -0
- package/dist/transformer/transformers/OpenAIResponseTransformer.cjs +538 -0
- package/dist/transformer/transformers/OpenAIResponseTransformer.d.cts +53 -0
- package/dist/transformer/transformers/OpenAIResponseTransformer.d.ts +53 -0
- package/dist/transformer/transformers/OpenAIResponseTransformer.js +513 -0
- package/dist/transformer/transformers/OpenCodeGoTransformer.cjs +73 -0
- package/dist/transformer/transformers/OpenCodeGoTransformer.d.cts +51 -0
- package/dist/transformer/transformers/OpenCodeGoTransformer.d.ts +51 -0
- package/dist/transformer/transformers/OpenCodeGoTransformer.js +48 -0
- package/dist/transformer/types.cjs +18 -0
- package/dist/transformer/types.d.cts +405 -0
- package/dist/transformer/types.d.ts +405 -0
- package/dist/transformer/types.js +0 -0
- package/dist/transformer.cjs +3736 -0
- package/dist/transformer.d.cts +33 -0
- package/dist/transformer.d.ts +33 -0
- package/dist/transformer.js +3712 -0
- package/dist/types-CGGrKqC_.d.cts +142 -0
- package/dist/types-CbCN2NQP.d.ts +142 -0
- package/dist/types-DCzHkhJt.d.ts +467 -0
- package/dist/types-DZIQbgp0.d.cts +467 -0
- package/dist/usage-event-sink-BX7FE1NL.d.cts +59 -0
- package/dist/usage-event-sink-BX7FE1NL.d.ts +59 -0
- package/package.json +62 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Transformer, TransformerLogger, TransformerOptions, LLMProvider, TransformerContext, UnifiedChatRequest } from '../types.cjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* GeminiTransformer - Bidirectional transformer for Google Gemini API
|
|
5
|
+
*
|
|
6
|
+
* Handles:
|
|
7
|
+
* - Request: Gemini → unified (transformRequestOut, for endpoint decoding)
|
|
8
|
+
* - Request: unified → Gemini (transformRequestIn, for provider encoding)
|
|
9
|
+
* - Response: Gemini → OpenAI (transformResponseOut, for provider decoding)
|
|
10
|
+
* - Response: OpenAI → Gemini (transformResponseIn, for endpoint encoding)
|
|
11
|
+
* - Authentication with x-goog-api-key or Bearer header
|
|
12
|
+
*
|
|
13
|
+
* @module transformer/transformers/GeminiTransformer
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* GeminiTransformer handles Google Gemini API format conversion
|
|
18
|
+
*
|
|
19
|
+
* Features:
|
|
20
|
+
* - Converts UnifiedChatRequest to Gemini Contents format
|
|
21
|
+
* - Handles thinking/reasoning mode with thinkingConfig
|
|
22
|
+
* - Converts Gemini responses to OpenAI-compatible format and vice versa
|
|
23
|
+
* - Supports both streaming and non-streaming responses
|
|
24
|
+
* - Supports x-goog-api-key (official) and Bearer (relay) authentication
|
|
25
|
+
*/
|
|
26
|
+
declare class GeminiTransformer implements Transformer {
|
|
27
|
+
static TransformerName: string;
|
|
28
|
+
name: string;
|
|
29
|
+
logger?: TransformerLogger;
|
|
30
|
+
/**
|
|
31
|
+
* API endpoint pattern for Gemini
|
|
32
|
+
* :modelAndAction will be replaced with actual model and action
|
|
33
|
+
*/
|
|
34
|
+
endPoint: string;
|
|
35
|
+
/** Use Bearer token instead of x-goog-api-key (for relay providers) */
|
|
36
|
+
private useBearer;
|
|
37
|
+
constructor(options?: TransformerOptions);
|
|
38
|
+
/**
|
|
39
|
+
* Handle authentication
|
|
40
|
+
* - Official Gemini: x-goog-api-key header
|
|
41
|
+
* - Relay providers: Authorization: Bearer header
|
|
42
|
+
*/
|
|
43
|
+
auth(request: unknown, provider: LLMProvider, _context: TransformerContext): Promise<{
|
|
44
|
+
body: unknown;
|
|
45
|
+
config: {
|
|
46
|
+
headers: Record<string, string | undefined>;
|
|
47
|
+
};
|
|
48
|
+
}>;
|
|
49
|
+
/**
|
|
50
|
+
* Transform request from unified format to Gemini format
|
|
51
|
+
* Also builds the correct URL for the Gemini API
|
|
52
|
+
*/
|
|
53
|
+
transformRequestIn(request: UnifiedChatRequest, provider: LLMProvider, _context: TransformerContext): Promise<Record<string, unknown>>;
|
|
54
|
+
/**
|
|
55
|
+
* Transform incoming request to unified format
|
|
56
|
+
* (For requests coming into the Gemini endpoint)
|
|
57
|
+
*/
|
|
58
|
+
transformRequestOut(request: unknown, _context: TransformerContext): Promise<UnifiedChatRequest>;
|
|
59
|
+
/**
|
|
60
|
+
* Transform Gemini response to OpenAI-compatible format
|
|
61
|
+
*/
|
|
62
|
+
transformResponseOut(response: Response, _context: TransformerContext): Promise<Response>;
|
|
63
|
+
/**
|
|
64
|
+
* Transform OpenAI-compatible response back to Gemini format
|
|
65
|
+
* (For endpoint mode — returning Gemini-format responses to the client)
|
|
66
|
+
*/
|
|
67
|
+
transformResponseIn(response: Response, _context?: TransformerContext): Promise<Response>;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export { GeminiTransformer };
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Transformer, TransformerLogger, TransformerOptions, LLMProvider, TransformerContext, UnifiedChatRequest } from '../types.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* GeminiTransformer - Bidirectional transformer for Google Gemini API
|
|
5
|
+
*
|
|
6
|
+
* Handles:
|
|
7
|
+
* - Request: Gemini → unified (transformRequestOut, for endpoint decoding)
|
|
8
|
+
* - Request: unified → Gemini (transformRequestIn, for provider encoding)
|
|
9
|
+
* - Response: Gemini → OpenAI (transformResponseOut, for provider decoding)
|
|
10
|
+
* - Response: OpenAI → Gemini (transformResponseIn, for endpoint encoding)
|
|
11
|
+
* - Authentication with x-goog-api-key or Bearer header
|
|
12
|
+
*
|
|
13
|
+
* @module transformer/transformers/GeminiTransformer
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* GeminiTransformer handles Google Gemini API format conversion
|
|
18
|
+
*
|
|
19
|
+
* Features:
|
|
20
|
+
* - Converts UnifiedChatRequest to Gemini Contents format
|
|
21
|
+
* - Handles thinking/reasoning mode with thinkingConfig
|
|
22
|
+
* - Converts Gemini responses to OpenAI-compatible format and vice versa
|
|
23
|
+
* - Supports both streaming and non-streaming responses
|
|
24
|
+
* - Supports x-goog-api-key (official) and Bearer (relay) authentication
|
|
25
|
+
*/
|
|
26
|
+
declare class GeminiTransformer implements Transformer {
|
|
27
|
+
static TransformerName: string;
|
|
28
|
+
name: string;
|
|
29
|
+
logger?: TransformerLogger;
|
|
30
|
+
/**
|
|
31
|
+
* API endpoint pattern for Gemini
|
|
32
|
+
* :modelAndAction will be replaced with actual model and action
|
|
33
|
+
*/
|
|
34
|
+
endPoint: string;
|
|
35
|
+
/** Use Bearer token instead of x-goog-api-key (for relay providers) */
|
|
36
|
+
private useBearer;
|
|
37
|
+
constructor(options?: TransformerOptions);
|
|
38
|
+
/**
|
|
39
|
+
* Handle authentication
|
|
40
|
+
* - Official Gemini: x-goog-api-key header
|
|
41
|
+
* - Relay providers: Authorization: Bearer header
|
|
42
|
+
*/
|
|
43
|
+
auth(request: unknown, provider: LLMProvider, _context: TransformerContext): Promise<{
|
|
44
|
+
body: unknown;
|
|
45
|
+
config: {
|
|
46
|
+
headers: Record<string, string | undefined>;
|
|
47
|
+
};
|
|
48
|
+
}>;
|
|
49
|
+
/**
|
|
50
|
+
* Transform request from unified format to Gemini format
|
|
51
|
+
* Also builds the correct URL for the Gemini API
|
|
52
|
+
*/
|
|
53
|
+
transformRequestIn(request: UnifiedChatRequest, provider: LLMProvider, _context: TransformerContext): Promise<Record<string, unknown>>;
|
|
54
|
+
/**
|
|
55
|
+
* Transform incoming request to unified format
|
|
56
|
+
* (For requests coming into the Gemini endpoint)
|
|
57
|
+
*/
|
|
58
|
+
transformRequestOut(request: unknown, _context: TransformerContext): Promise<UnifiedChatRequest>;
|
|
59
|
+
/**
|
|
60
|
+
* Transform Gemini response to OpenAI-compatible format
|
|
61
|
+
*/
|
|
62
|
+
transformResponseOut(response: Response, _context: TransformerContext): Promise<Response>;
|
|
63
|
+
/**
|
|
64
|
+
* Transform OpenAI-compatible response back to Gemini format
|
|
65
|
+
* (For endpoint mode — returning Gemini-format responses to the client)
|
|
66
|
+
*/
|
|
67
|
+
transformResponseIn(response: Response, _context?: TransformerContext): Promise<Response>;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export { GeminiTransformer };
|