Use class declaration and fix type resolution in tests

This commit is contained in:
Ryan Riley
2017-03-31 14:14:26 -05:00
parent 2d9510949f
commit 261cc56881
3 changed files with 96 additions and 14 deletions
+94 -12
View File
@@ -493,17 +493,99 @@ declare namespace Handsontable {
type DropdownColumn = AutocompleteColumn;
}
interface Handsontable {
new (element: Element, options: Handsontable.Options): Handsontable.Methods;
plugins: Handsontable.Plugins;
hooks: Handsontable.Hooks;
Dom: Handsontable.Dom;
dom: Handsontable.Dom;
helper: Handsontable.Helper;
utils: Handsontable.Utils;
renderers: Handsontable.Renderers;
editors: Handsontable.Editors;
declare class Handsontable implements Handsontable.Methods {
constructor (element: Element, options: Handsontable.Options);
static plugins: Handsontable.Plugins;
static hooks: Handsontable.Hooks;
static Dom: Handsontable.Dom;
static dom: Handsontable.Dom;
static helper: Handsontable.Helper;
static utils: Handsontable.Utils;
static renderers: Handsontable.Renderers;
static editors: Handsontable.Editors;
addHook(key: string, callback: Function|any[]): void;
addHookOnce(key: string, callback: Function|any[]): void;
alter(action: string, index: number, amount?: number, source?: string, keepEmptyRows?: boolean): void;
clear(): void;
colOffset(): number;
colToProp(col: number): string|number;
countCols(): number;
countEmptyCols(ending?: boolean): number;
countEmptyRows(ending?: boolean): number;
countRenderedCols(): number;
countRenderedRows(): number;
countRows(): number;
countSourceRows(): number;
countVisibleCols(): number;
countVisibleRows(): number;
deselectCell(): void;
destroy(): void;
destroyEditor(revertOriginal?: boolean): void;
getActiveEditor(): Object;
getCell(row: number, col: number, topmost?: boolean): Element;
getCellEditor(row: number, col: number): Object;
getCellMeta(row: number, col: number): Object;
getCellRenderer(row: number, col: number): Function;
getCellValidator(row: number, col: number): any;
getColHeader(col?: number): any[]|string;
getColWidth(col: number): number;
getCoords(elem: Element): Object;
getCopyableData(row: number, column: number): string;
getCopyableText(startRow: number, startCol: number, endRow: number, endCol: number): string;
getData(r?: number, c?: number, r2?: number, c2?: number): any[];
getDataAtCell(row: number, col: number): any;
getDataAtCol(col: number): any[];
getDataAtProp(prop: string|number): any[];
getDataAtRow(row: number): any[];
getDataAtRowProp(row: number, prop: string): any;
getDataType(rowFrom: number, columnFrom: number, rowTo: number, columnTo: number): string;
getInstance(): any;
getPlugin(pluginName: string): any;
getRowHeader(row?: number): any[]|string;
getRowHeight(row: number): number;
getSchema(): Object;
getSelected(): any[];
getSelectedRange(): Handsontable.Range;
getSettings(): Handsontable.Options;
getSourceData(r?: number, c?: number, r2?: number, c2?: number): any[];
getSourceDataAtCell(row: number, column: number): any;
getSourceDataAtCol(column: number): any[];
getSourceDataAtRow(row: number): any[]|Object;
getValue(): any;
hasColHeaders(): boolean;
hasHook(key: string): boolean;
hasRowHeaders(): boolean;
isEmptyCol(col: number): boolean;
isEmptyRow(row: number): boolean;
isListening(): boolean;
listen(): void;
loadData(data: any[]): void;
populateFromArray(row: number, col: number, input: any[], endRow?: number, endCol?: number, source?: string, method?: string, direction?: string, deltas?: any[]): any;
propToCol(prop: string | number): number;
removeCellMeta(row: number, col: number, key: string): void;
removeHook(key: string, callback: Function): void;
render(): void;
rowOffset(): number;
runHooks(key: string, p1?: any, p2?: any, p3?: any, p4?: any, p5?: any, p6?: any): any;
selectCell(row: number, col: number, endRow?: number, endCol?: number, scrollToCell?: boolean, changeListener?: boolean): boolean;
selectCellByProp(row: number, prop: string, endRow?: number, endProp?: string, scrollToCell?: boolean): boolean;
setCellMeta(row: number, col: number, key: string, val: string): void;
setCellMetaObject(row: number, col: number, prop: Object): void;
setDataAtCell(row: number|any[], col: number, value: string, source?: string): void;
setDataAtRowProp(row: number|any[], prop: string, value: string, source?: string): void;
spliceCol(col: number, index: number, amount: number, elements?: any): void;
spliceRow(row: number, index: number, amount: number, elements?: any): void;
toPhysicalRow(row: number): number;
toPhysicalColumn(column: number): number;
toVisualRow(row: number): number;
toVisualColumn(column: number): number;
unlisten(): void;
updateSettings(settings: Object, init?: boolean): void;
validateCells(callback: Function): void;
}
export = Handsontable;
export as namespace Handsontable;
declare module "handsontable" {
export = Handsontable;
}
//export = Handsontable;
//export as namespace Handsontable;
+1 -1
View File
@@ -249,7 +249,7 @@ namespace HandsontableGlobalTest {
hot.getRowHeight(123);
hot.getSchema();
hot.getSelected();
const range: ht.Range = hot.getSelectedRange();
const range: Handsontable.Range = hot.getSelectedRange();
hot.getSettings();
hot.getSourceData(123, 123, 123, 123);
hot.getSourceDataAtCell(123, 123);
+1 -1
View File
@@ -249,7 +249,7 @@ namespace HandsOnTableModuleTest {
hot.getRowHeight(123);
hot.getSchema();
hot.getSelected();
const range: ht.Range = hot.getSelectedRange();
const range: Handsontable.Range = hot.getSelectedRange();
hot.getSettings();
hot.getSourceData(123, 123, 123, 123);
hot.getSourceDataAtCell(123, 123);