import * as _ng_nest_ui_i18n from '@ng-nest/ui/i18n';
import * as _angular_core from '@angular/core';
import { InputSignal, OnInit, OnDestroy, ElementRef, WritableSignal } from '@angular/core';
import * as _ng_nest_ui_core from '@ng-nest/ui/core';
import { XNumber, XTemplate, XProperty, XConfigService } from '@ng-nest/ui/core';
/**
* Image
* @selector x-image
* @decorator component
*/
declare const XImagePrefix = "x-image";
declare const XImageProperty_base: new () => {
config: _ng_nest_ui_core.XImageConfig | undefined;
};
/**
* Image Property
*/
declare class XImageProperty extends XImageProperty_base {
/**
* @zh_CN 图片显示地址
* @en_US Picture display address
* @example
*
* ```html
*
* ```
*
*/
readonly src: InputSignal;
/**
* @zh_CN 图片宽度
* @en_US Picture width
* @example
*
* ```html
*
* ```
*
*/
readonly width: _angular_core.InputSignalWithTransform;
/**
* @zh_CN 图片高度
* @en_US Picture height
* @example
*
* ```html
*
* ```
*
*/
readonly height: _angular_core.InputSignalWithTransform;
/**
* @zh_CN 图像描述
* @en_US Image description
* @example
*
* ```html
*
* ```
*
*/
readonly alt: InputSignal;
/**
* @zh_CN 加载失败显示的地址
* @en_US Load fault tolerance address
* @example
*
* ```html
*
* ```
*
*/
readonly fallback: InputSignal;
/**
* @zh_CN 预览文字
* @en_US Preview text
* @default '预览'
* @example
*
* ```html
*
* ```
*
*/
readonly previewText: InputSignal;
/**
* @zh_CN 渐进加载显示的图片地址
* @en_US Progressive loading image addresses
*/
readonly placeholder: InputSignal;
/**
* @zh_CN 自定义预览操作
* @en_US Custom preview operation
*/
readonly previewTpl: InputSignal;
/**
* @zh_CN 图片加载错误
* @en_US Picture load failed
* @example
*
* ```html
*
* ```
*
* ```typescript
* onError(event: ErrorEvent) {
* console.log(event)
* }
* ```
*
*/
readonly error: _angular_core.OutputEmitterRef;
/**
* @zh_CN 图片加载完成
* @en_US Picture loading complete
* @example
*
* ```html
*
* ```
*
* ```typescript
* onLoad(event: Event) {
* console.log(event)
* }
* ```
*
*/
readonly load: _angular_core.OutputEmitterRef;
static ɵfac: _angular_core.ɵɵFactoryDeclaration;
static ɵcmp: _angular_core.ɵɵComponentDeclaration;
}
/**
* @zh_CN 图片节点数据
* @en_US Image node data
*/
interface XImageNode {
/**
* @zh_CN 图片显示地址
* @en_US Picture display address
*/
src?: string;
/**
* @zh_CN 图像描述
* @en_US Image description
*/
alt?: string;
/**
* @zh_CN 加载失败显示的地址
* @en_US Load fault tolerance address
*/
fallback?: string;
/**
* @zh_CN 当前激活的图片
* @en_US Current activated pictures
*/
activated?: boolean;
}
/**
* Image Preview
* @selector x-image-preview
* @decorator component
*/
declare const XImagePreviewPrefix = "x-image-preview";
/**
* Image Preview Property
*/
declare class XImagePreviewProperty extends XProperty {
static ɵfac: _angular_core.ɵɵFactoryDeclaration;
static ɵcmp: _angular_core.ɵɵComponentDeclaration;
}
/**
* Image Group
* @selector x-image-group
* @decorator component
*/
declare const XImageGroupPrefix = "x-image-group";
/**
* @zh_CN 图片组件定义
* @en_US Image component definition
*/
interface XImageHandle {
src: InputSignal;
alt: InputSignal;
fallback: InputSignal;
}
declare class XImageComponent extends XImageProperty implements OnInit, OnDestroy, XImageHandle {
private dialog;
private i18n;
private group;
configService: XConfigService;
isError: _angular_core.WritableSignal;
isLoaded: _angular_core.WritableSignal;
locale: _angular_core.Signal<_ng_nest_ui_i18n.XI18nImage | {
previewText: string;
}>;
previewTextSignal: _angular_core.Signal;
constructor();
ngOnInit(): void;
ngOnDestroy(): void;
onPreview(): void;
onError(event: ErrorEvent): void;
onLoad(event: Event): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration;
static ɵcmp: _angular_core.ɵɵComponentDeclaration;
}
declare class XImagePreviewComponent extends XImagePreviewProperty implements OnInit {
imgScale3d: _angular_core.WritableSignal<{
x: number;
y: number;
z: number;
}>;
rotate: _angular_core.WritableSignal;
position: _angular_core.WritableSignal<{
x: number;
y: number;
}>;
activated: _angular_core.WritableSignal;
total: _angular_core.WritableSignal;
current: _angular_core.WritableSignal;
private document;
wrapperTransform: _angular_core.Signal;
imgTransform: _angular_core.Signal;
imageRef: _angular_core.Signal>;
data: XImageNode[];
ngOnInit(): void;
initialization(): void;
setActivated(): void;
onCurrentChange(num: number): void;
onRotate(deg: number): void;
onScale(zoom: number): void;
onWheel(event: WheelEvent): void;
onDragReleased(): void;
private adjustPosition;
static ɵfac: _angular_core.ɵɵFactoryDeclaration;
static ɵcmp: _angular_core.ɵɵComponentDeclaration;
}
interface XImageGroupContext {
images: WritableSignal;
addImage(image: XImageHandle): void;
removeImage(image: XImageHandle): void;
}
declare class XImageGroupComponent implements XImageGroupContext {
images: _angular_core.WritableSignal;
addImage(image: XImageHandle): void;
removeImage(image: XImageHandle): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration;
static ɵcmp: _angular_core.ɵɵComponentDeclaration;
}
declare class XImageModule {
static ɵfac: _angular_core.ɵɵFactoryDeclaration;
static ɵmod: _angular_core.ɵɵNgModuleDeclaration;
static ɵinj: _angular_core.ɵɵInjectorDeclaration;
}
export { XImageComponent, XImageGroupComponent, XImageGroupPrefix, XImageModule, XImagePrefix, XImagePreviewComponent, XImagePreviewPrefix, XImagePreviewProperty, XImageProperty };
export type { XImageHandle, XImageNode };