import { IDesignAtomsApiClient, IFallbackFontsResult, ILicense } from "./IDesignAtomsApiClient";
import { IDesignAtomsApiClient as IDesignAtomsApiClientAtomsText } from "@aurigma/design-atoms-text/TextEditor/Interfaces/IDesignAtomsApiClient";
import { ImageMetaData } from "@aurigma/design-atoms-model/Product/Items/ImageMetaData";
import { RectangleF, Path } from "@aurigma/design-atoms-model/Math";
import { FailureFunc, SuccessFunc } from "./IService";
import { EventWithSenderArg } from "@aurigma/design-atoms-model";
import { Color, RgbColor } from "@aurigma/design-atoms-model/Colors";
import { IPreviewColorSettings } from "./IPreviewColorSettings";
export declare class ServiceError {
    private _timeout;
    private _message;
    private _stacktrace?;
    private _type?;
    private _data?;
    constructor(_timeout: boolean, _message: string, _stacktrace?: string, _type?: any, _data?: any);
}
export declare class DesignAtomsApiClient implements IDesignAtomsApiClient, IDesignAtomsApiClientAtomsText {
    private _setBackendUrl;
    private _backendUrl;
    private _timeout;
    private _loadingImageUrl;
    private _loadingImageUrlChanged;
    private _authorizationToken;
    constructor(timeout?: number);
    set backendUrl(value: string);
    get backendUrl(): string;
    get loadingImageUrl(): string;
    set loadingImageUrl(value: string);
    get loadingImageUrlChanged(): EventWithSenderArg<IDesignAtomsApiClient, any>;
    get serviceEndpoint(): string;
    setAuthorizationToken(authorizationToken: string): void;
    getColorPreviews(colors: Color[], colorSettings: IPreviewColorSettings): Promise<RgbColor[]>;
    getColorPreview(color: Color, colorSettings: IPreviewColorSettings): Promise<RgbColor>;
    getFontsCSS(requestedFonts: string[], advancedMode: boolean): Promise<string>;
    getFallbackFonts(): Promise<IFallbackFontsResult>;
    getFontsByteArray(psName: string): Promise<Uint8Array>;
    getContentPath(originalPathId: string): Promise<string>;
    getImageMetaDataFromRemoteUrl(remoteUrl: string, appDomainUrl?: string): Promise<ImageMetaData>;
    getImageMetaDataFromFile(filePath: string, userId?: string): Promise<ImageMetaData>;
    getImageMetaDataFromDesignImage(designImageName: string): Promise<ImageMetaData>;
    getImageMetadataFromRemoteFile(url: string): Promise<ImageMetaData>;
    getLicenseAsync(): Promise<ILicense>;
    getPathBoundsFromServer(path: Path): Promise<RectangleF>;
    sendRequest(methodName: any, data: any, resolve: SuccessFunc, failure: FailureFunc, returnRawResponse?: boolean): void;
    private _parseImageMetadata;
    private _getHeaders;
    private _getAuthHeaderValue;
    private _isAuthHeaderRequired;
}
