import * as React from 'react'; import { IBaseEvent } from './event-definition.interface'; import { IPresetsXYEntity } from './xy-definition.interface'; import { IAutoUnsubscribingWrapper, ICallbackWrapper, ICaptureWrapper, IConditionWrapper, IDataWrapper, IDetectFileTypeWrapper, IElementWrapper, IEventNameWrapper, IEventWrapper, IFileNameWrapper, IParentClassNameWrapper, IParentElementWrapper, IPositionConfigurationWrapper, IUrlWrapper } from '../definitions.interface'; /** * @stable [08.11.2019] */ export interface IScrollConfigEntity { alignWithLeft?: boolean; alignWithTop?: boolean; offsetTop?: number; } /** * @stable [28.10.2019] */ export declare type InputElementT = HTMLInputElement | HTMLTextAreaElement; /** * @stable [23.10.2019] */ export declare enum ElementsMarkersEnum { SELECTED_ELEMENT_817ACCF6 = "rac-element-817accf6", STICKY_ELEMENT_275B4646 = "rac-element-275b4646" } /** * @stable [29.09.2019] */ export interface IJQueryElement extends JQuery { } /** * @stable [23.11.2019] */ export interface ICaptureEventConfigEntity extends IAutoUnsubscribingWrapper, ICallbackWrapper<(event?: IBaseEvent) => void>, ICaptureWrapper, IConditionWrapper<() => boolean>, IElementWrapper, IEventNameWrapper, IParentElementWrapper { } /** * @configuration-entity * @stable [24.01.2020] */ export interface IDomPositionConfigurationEntity extends IPositionConfigurationWrapper { } /** * @config-entity * @see https://api.jqueryui.com/position/ * @stable [24.01.2020] */ export interface IDomPositionConfigEntity extends IEventWrapper Event)>, // Extra synthetic props IElementWrapper { at?: string; collision?: string; my?: string; of?: TElement | Event | string; } /** * @default-entity * @stable [24.01.2020] */ export declare const DEFAULT_DOM_POSITION_CONFIG_ENTITY: Readonly>; /** * @default-entity * @stable [24.01.2020] */ export declare const DEFAULT_DOM_RIGHT_POSITION_CONFIG_ENTITY: Readonly>; /** * @config-entity * @stable [23.11.2019] */ export interface IDomFireEventConfigEntity extends IElementWrapper, IEventNameWrapper, IEventWrapper { } /** * @config-entity * @stable [25.01.2020] */ export interface IDomParentConfigEntity extends IElementWrapper, IParentClassNameWrapper { } /** * @config-entity * @stable [13.12.2020] */ export interface IDownloadFileConfigEntity extends IDataWrapper, IDetectFileTypeWrapper, IFileNameWrapper, IUrlWrapper { } /** * @stable [29.09.2019] */ export interface IDomAccessor { documentBody?: Element; rootElement?: Element; addChild(child: Element, parentEl?: Element): Element; addClassNames(element: Element, ...clsNames: string[]): void; addClassNamesToRootElement(...clsName: string[]): void; addRootElement(): Element; asImageUrl(url: string): string; asJqEl(source: Element): TJqElement; asSelector(selector: string): string; cancelEvent(event: IBaseEvent): void; captureEvent(cfg: ICaptureEventConfigEntity): () => void; captureEventWithinElement(cfg: ICaptureEventConfigEntity): any; createElement(tag?: string, parentEl?: Element): TElement; createScript(cfg: Partial): Promise; disableFullScreen(element?: Element): any; dispatchEvent(cfg: IDomFireEventConfigEntity): void; downloadFile(cfg: IDownloadFileConfigEntity): Promise; downloadFileByBlob(cfg: IDownloadFileConfigEntity): void; enableFullScreen(element?: Element): any; findElement(selector: string, parent?: Element): Element; fireEvent(cfg: IDomFireEventConfigEntity): void; getActiveElement(): Element; getContentHeight(source: Element): number; getElement(id: string): Element; getHeight(source: Element): number; getParents(cfg: IDomParentConfigEntity): IJQueryElement; getParentsAsElements(cfg: IDomParentConfigEntity): Element[]; getProperty(source: Element, property: string): string; getScrollInfo(el: Element): IPresetsXYEntity; getScrollLeft(el: Element): number; getScrollTop(el: Element): number; getTransformScaleStyles(scale: number, transformOrigin?: string): React.CSSProperties; getTransformStyles(transform: string, transformOrigin?: string): React.CSSProperties; getWidth(source: Element): number; hasClasses(target: Element, ...classNames: string[]): boolean; hasElements(selector: string, target?: Element): boolean; hasParent(cfg: IDomParentConfigEntity): boolean; isAlreadyFocused(): boolean; isElementFocused(element: Element): boolean; isElementVisibleWithinParent(child: Element, parentEl?: Element): boolean; redirect(path: string): void; reload(forceReload?: boolean): void; removeChild(child: Element, parentEl?: Element): any; removeClassNames(element: Element, ...clsNames: string[]): void; removeClassNamesFromRootElement(...clsNames: string[]): any; scrollTo(payload: IPresetsXYEntity | Element, parentEl?: Element, config?: IScrollConfigEntity): void; setPosition(cfg: IDomPositionConfigEntity): void; setScrollLeft(el: Element, left: number): void; setScrollTop(el: Element, top: number): void; }