import * as rxjs from 'rxjs';
import * as _firebase_ai from '@firebase/ai';
import { VertexAI as VertexAI$1, getAI as getAI$1, getGenerativeModel as getGenerativeModel$1, getImagenModel as getImagenModel$1, getVertexAI as getVertexAI$1 } from 'firebase/vertexai';
export * from 'firebase/vertexai';
import * as i0 from '@angular/core';
import { Injector, EnvironmentProviders } from '@angular/core';

interface VertexAI extends VertexAI$1 {
}
declare class VertexAI {
    constructor(vertexai: VertexAI$1);
}
interface VertexAIInstances extends Array<VertexAI$1> {
}
declare class VertexAIInstances {
    constructor();
}
declare const vertexAIInstance$: rxjs.Observable<_firebase_ai.AI>;

declare class VertexAIModule {
    constructor();
    static ɵfac: i0.ɵɵFactoryDeclaration<VertexAIModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<VertexAIModule, never, never, never>;
    static ɵinj: i0.ɵɵInjectorDeclaration<VertexAIModule>;
}
declare function provideVertexAI(fn: (injector: Injector) => VertexAI$1, ...deps: any[]): EnvironmentProviders;

declare const getAI: typeof getAI$1;
declare const getGenerativeModel: typeof getGenerativeModel$1;
declare const getImagenModel: typeof getImagenModel$1;
declare const getVertexAI: typeof getVertexAI$1;

export { VertexAI, VertexAIInstances, VertexAIModule, getAI, getGenerativeModel, getImagenModel, getVertexAI, provideVertexAI, vertexAIInstance$ };
