[element-resize-detector] Updated type definition (#30501)

* Update tsconfig.json

* Update element-resize-detector-tests.ts

* Update index.d.ts

* Update index.d.ts

* Update element-resize-detector-tests.ts

* Update index.d.ts

* Update index.d.ts

* Update element-resize-detector-tests.ts

* Update index.d.ts

* Update index.d.ts

* Update index.d.ts

* Update index.d.ts
This commit is contained in:
Frank Li
2018-11-16 14:32:50 -08:00
committed by Pranav Senthilnathan
parent 009ef28c97
commit 28a8ad8439
3 changed files with 34 additions and 15 deletions
@@ -1,19 +1,21 @@
import * as elementResizeDetectorMaker from 'element-resize-detector';
const erd = elementResizeDetectorMaker({
strategy: "scroll"
});
strategy: "scroll",
debug: true,
callOnAdd: false
});
const testElement: HTMLElement = null;
const testElement: HTMLElement | null = null;
erd.listenTo(testElement, (element) => {
erd.listenTo(testElement!, (element) => {
const width = element.offsetWidth;
const height = element.offsetHeight;
console.log(`Size: " + ${width} + "x" + ${height}`);
});
});
erd.removeListener(testElement, (testElement) => {});
erd.removeListener(testElement!, (testElement) => {});
erd.removeAllListeners(testElement);
erd.removeAllListeners(testElement!);
erd.uninstall(testElement);
erd.uninstall(testElement!);
+22 -5
View File
@@ -1,20 +1,37 @@
// Type definitions for element-resize-detector 1.1
// Project: https://github.com/wnr/element-resize-detector
// Definitions by: Saransh Kataria <https://github.com/saranshkataria>
// Frank Li <https://github.com/franklixuefei>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
declare function elementResizeDetectorMaker(options?: elementResizeDetectorMaker.ErdmOptions): elementResizeDetectorMaker.Erd;
declare namespace elementResizeDetectorMaker {
interface ErdmOptions {
strategy?: 'scroll' | 'object';
strategy?: 'scroll' | 'object';
reporter?: ReporterProps;
callOnAdd?: boolean;
idHandler?: IdHandlerProps;
debug?: boolean;
}
interface IdHandlerProps {
get(element: HTMLElement, readonly: boolean): string;
set(element: HTMLElement): string;
}
interface ReporterProps {
log(): void;
warn(): void;
error(): void;
}
interface Erd {
listenTo(element: HTMLElement, callback: (elem: HTMLElement) => void): void;
removeListener(element: HTMLElement, callback: (elem: HTMLElement) => void): void;
removeAllListeners(element: HTMLElement): void;
uninstall(element: HTMLElement): void;
listenTo(element: HTMLElement, callback: (elem: HTMLElement) => void): void;
removeListener(element: HTMLElement, callback: (elem: HTMLElement) => void): void;
removeAllListeners(element: HTMLElement): void;
uninstall(element: HTMLElement): void;
}
}
export = elementResizeDetectorMaker;
+2 -2
View File
@@ -7,7 +7,7 @@
],
"noImplicitAny": true,
"noImplicitThis": true,
"strictNullChecks": false,
"strictNullChecks": true,
"strictFunctionTypes": true,
"baseUrl": "../",
"typeRoots": [
@@ -21,4 +21,4 @@
"index.d.ts",
"element-resize-detector-tests.ts"
]
}
}