armisa-models
Version:
models of armisa!
43 lines (42 loc) • 1.77 kB
TypeScript
import { Tabbing } from ".";
import { MainStateManager } from "../../../MainStateManager";
import { IMainStateFactory } from "../../../Types";
import { IFocusAbleGridEditFactory } from "./GridEditTabbing";
export interface IFocusAbleElementFactory {
mainStateManager: MainStateManager;
tabIndex: number;
element: HTMLElement;
disabled: boolean;
hidden: boolean;
mainStateFactory: IMainStateFactory;
factoryFieldName: string;
}
declare class MergeElementAndGridEdit {
element: HTMLElement;
tabIndex: number;
factory: IFocusAbleElementFactory | IFocusAbleGridEditFactory;
constructor(element: HTMLElement, tabIndex: number, factory: IFocusAbleElementFactory | IFocusAbleGridEditFactory);
}
export declare class ElementTabbing {
tabbing: Tabbing;
isEmpty: () => boolean;
focusAbleElements: IFocusAbleElementFactory[];
constructor(tabbing: Tabbing);
getFocusAbleElements: () => MergeElementAndGridEdit[];
focus: () => void;
isThereAnyElement(element: EventTarget): MergeElementAndGridEdit | undefined;
focusToActiveElementTabIndex: () => boolean;
focusToZeroTabIndexOrFirstElementOrToolbox: () => void;
focusToZeroTabIndexElement: () => boolean;
focusToFirstTabIndexElement: () => boolean;
focusToMaxTabIndexOrLastElement: () => void;
focusToMaxTabIndexElement: () => boolean;
focusToLastTabIndexElement: () => boolean;
focusToElementByTabIndex: (tabIndex: number) => boolean;
focusToElementByHTMLElement: (element: HTMLElement) => boolean;
validateAndFocusNextElement: () => void;
focusNextElement: () => void;
focusPreviousElement: () => void;
setFocus(find: MergeElementAndGridEdit): void;
}
export {};