import { OmniaTheming } from "@omnia/fx/ux";
import { IWebComponentInstance, OmniaContext } from "@omnia/fx";
import { type OmniaUxLocalization } from "@omnia/fx/ux";
import { GridViewMediaProviderComponent } from "../mediaproviderbase/GridViewMediaProviderComponent";
import { ImageInformation, VideoItem, ImageItem, MediaPickerVideo, VideoInformation, MediaPickerImageTransformationResult, IBusinessProfile } from "../../../models";
import { AzureOpenAIService } from "../../../services";
import { GptImageProviderLocalization } from "./loc/localize";
import { TextToImagesRequest, GeneratedImage, TextToImagesResponse } from "@omnia/fx-models";
import "./GptImageProvider.css";
import { MultilingualStore } from "@omnia/fx/stores";
export default class GptImageProvider extends GridViewMediaProviderComponent implements IWebComponentInstance {
    beforeSaved(resultToBeSaved: MediaPickerImageTransformationResult | VideoInformation): Promise<MediaPickerVideo | MediaPickerImageTransformationResult>;
    getMediaItems(searchKeyword: string): Promise<GeneratedImage[]>;
    getMoreMediaItems(lastLoadedIndex: number): Promise<GeneratedImage[]>;
    getMediaInfo(mediaItem: ImageItem | VideoItem): Promise<ImageInformation | VideoInformation>;
    setEmptyResultHandler(): void;
    azureOpenAiService: AzureOpenAIService;
    omniaTheming: OmniaTheming;
    private aiSettingsService;
    omniaCtx: OmniaContext;
    multilingualStore: MultilingualStore;
    gptImageLoc: GptImageProviderLocalization.locInterface;
    omniaUxLoc: OmniaUxLocalization;
    private searchKeyword;
    private GptImageSupportImageResolution;
    private generatedImages;
    private textToImagesRequests;
    private resultStyles;
    private selectedImageResolution;
    private textToImagesResponseMap;
    private gptImagePredefinedPromptList;
    private preDefinedPrompt;
    private preDefaultPrompt;
    private gptImageConstant;
    private displayPrompts;
    private getTextToImagesRequest;
    constructor();
    created(): void;
    mounted(): void;
    initGptImagePromptSettingsListing(businessProfileId: IBusinessProfile): Promise<void>;
    onGenerateImage(): void;
    onPressEnter: (event: KeyboardEvent) => void;
    getPredefinedPrompts(predefinedPrompt: string): void;
    selectGridItemPublic(item: GeneratedImage): void;
    addGeneratedImage(item: GeneratedImage, textToImagesRequest: TextToImagesRequest): void;
    addTextToImagesResponse(item: TextToImagesResponse, textToImagesRequest: TextToImagesRequest): void;
    onRegenerateImage(textToImagesRequest: TextToImagesRequest): void;
    private renderCustomSlot;
    private getPredefinedPromptsItem;
    private renderPredefinedPrompts;
    private renderPromptInput;
    render(): VueTsxSupport.JSX.Element;
}
