/**
 * "Public" because these are the engines the users can choose from.
 */
export type PublicAuthBasedEngine = 'Play3.0-mini' | 'PlayDialog';
/**
 * "Internal" because these are the engines we use internally to determine the inference address (the HTTP endpoint).
 */
export type InternalAuthBasedEngine = PublicAuthBasedEngine | 'PlayDialogArabic' | 'PlayDialogMultilingual';
export type V3InternalSettings = {
    coordinatesExpirationAdvanceRefreshTimeMs?: number;
    coordinatesExpirationMinimalFrequencyMs?: number;
    coordinatesGetApiCallMaxRetries?: number;
    customInferenceCoordinatesGenerator?: (engine: InternalAuthBasedEngine, userId: string, apiKey: string) => Promise<InferenceCoordinatesEntry>;
};
export type InferenceCoordinatesEntry = {
    inferenceAddress: string;
    expiresAtMs: number;
};
