import { Alignment } from "../../../enums/SDKAlignment";
import { DocsBlockImagePropertyAspectRatio } from "../../../enums/SDKDocsBlockImagePropertyAspectRatio";
import { DocsBlockImagePropertyWidth } from "../../../enums/SDKDocsBlockImagePropertyWidth";
import { DocsBlockItemPropertyType } from "../../../enums/SDKDocsBlockItemPropertyType";
import { DocsImageRef } from "../support/SDKDocsImageRef";
import { DocsBlockPropertyDefinition, DocsBlockPropertyDefinitionModel, DocsBlockPropertyData } from "./SDKDocsBlockProperty";
/** Image property - Additional non-value options */
export type DocsBlockImagePropertyOptions = {
    width?: DocsBlockImagePropertyWidth;
    aspectRatio?: DocsBlockImagePropertyAspectRatio;
    allowCaption?: boolean;
    allowLightbox?: boolean;
    allowBorder?: boolean;
    recommendation?: string;
    imageSources?: ("figmaDataSource" | "figmaStandalone" | "upload")[];
    /** Editor interactivity */
    editorInteractivity?: "edit" | "viewOnly";
};
/** Image property - Data */
export type DocsBlockImagePropertyData = DocsBlockPropertyData<DocsImageRef | undefined> & {
    alt: string;
    caption?: string;
    alignment?: Alignment;
    openLightbox?: boolean;
    isBordered?: boolean;
};
/** Image property - Definition model */
export type DocsBlockImagePropertyDefinitionModel = DocsBlockPropertyDefinitionModel & DocsBlockImagePropertyOptions;
/** Image property - Definition */
export declare class DocsBlockImagePropertyDefinition extends DocsBlockPropertyDefinition<DocsBlockImagePropertyOptions, DocsBlockImagePropertyData> {
    type: DocsBlockItemPropertyType.image;
}
