import type { LanguageModelV2 } from '../../../_types/@ai-sdk_provider-v5/dist/index.d.ts'; import type { OpenAITransport, ResponsesWebSocketOptions } from '../provider-options.js'; import { MastraModelGateway } from './base.js'; import type { ProviderConfig } from './base.js'; export interface AzureAccessToken { token: string; expiresOnTimestamp?: number; } export interface AzureTokenCredential { getToken(scopes: string | string[], options?: unknown): Promise; } export interface AzureOpenAIGatewayConfig { resourceName: string; apiKey?: string; apiVersion?: string; useResponsesAPI?: boolean; useDeploymentBasedUrls?: boolean; deployments?: string[]; authentication?: { type: 'entraId'; credential: AzureTokenCredential; scope?: string; }; management?: { tenantId: string; clientId: string; clientSecret: string; subscriptionId: string; resourceGroup: string; }; } export declare class AzureOpenAIGateway extends MastraModelGateway { private config; readonly id = "azure-openai"; readonly name = "azure-openai"; private tokenCache; private entraIdTokenRequests; constructor(config: AzureOpenAIGatewayConfig); private validateConfig; fetchProviders(): Promise>; private getManagementCredentials; private getAzureADToken; private fetchDeployments; buildUrl(_routerId: string, _envVars?: typeof process.env): undefined; getApiKey(_modelId: string): Promise; private getEntraIdToken; private fetchEntraIdToken; private createEntraIdFetch; private createAzureResponsesWebSocketFetch; resolveLanguageModel({ modelId, apiKey, headers, transport, responsesWebSocket, }: { modelId: string; providerId: string; apiKey: string; headers?: Record; transport?: OpenAITransport; responsesWebSocket?: ResponsesWebSocketOptions; }): Promise; } //# sourceMappingURL=azure.d.ts.map