Add box-intersect definition (#41840)

* Add box-intersect declaration

* Fix box-intersect declaration
This commit is contained in:
sankaku-deltalab
2020-01-29 02:09:37 +09:00
committed by Ben Lichtman
parent 990a5ed995
commit 3c6058dac4
4 changed files with 80 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
import boxIntersect from 'box-intersect';
type Box2D = [number, number, number, number];
type Box3D = [number, number, number, number, number, number];
const red2d: Box2D[] = [
[1, 1, 2, 2],
[0, -1, 3, 2],
];
const blue2d: Box2D[] = [
[2, 1, 4, 5],
[0.5, 3, 1, 10],
];
boxIntersect(red2d);
boxIntersect(red2d, (r, b) => {});
boxIntersect<Box2D>(red2d, blue2d);
boxIntersect<Box2D>(red2d, blue2d, (r, b) => {});
const red3d: Box3D[] = [
[0, 0, 0, 8, 1, 1],
[0, 0, 0, 1, 8, 1],
[0, 0, 0, 1, 1, 8],
];
const blue3d: Box3D[] = [
[5, 0, 0, 6, 10, 10],
[0, 5, 0, 10, 6, 10],
[0, 0, 5, 10, 10, 10],
];
boxIntersect(red3d);
boxIntersect(red3d, (r, b) => {});
boxIntersect<Box3D>(red3d, blue3d);
boxIntersect<Box3D>(red3d, blue3d, (r, b) => {});

17
types/box-intersect/index.d.ts vendored Normal file
View File

@@ -0,0 +1,17 @@
// Type definitions for box-intersect 1.0
// Project: https://github.com/mikolalysenko/box-intersect
// Definitions by: Sankaku <https://github.com/sankaku-deltalab>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
export = boxIntersect;
declare function boxIntersect(
x: ReadonlyArray<ReadonlyArray<number>>,
visit?: (i: number, j: number) => void,
): Array<[number, number]>;
declare function boxIntersect<T extends number[]>(
red: ReadonlyArray<T>,
blue?: ReadonlyArray<T>,
visit?: (i: number, j: number) => void,
): Array<[number, number]>;

View File

@@ -0,0 +1,24 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": [
"es6"
],
"noImplicitAny": true,
"noImplicitThis": true,
"strictFunctionTypes": true,
"strictNullChecks": true,
"baseUrl": "../",
"typeRoots": [
"../"
],
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true,
"esModuleInterop": true
},
"files": [
"index.d.ts",
"box-intersect-tests.ts"
]
}

View File

@@ -0,0 +1,3 @@
{
"extends": "dtslint/dt.json"
}