mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
Add type definitions for unique-push-id (#34323)
This commit is contained in:
parent
693a1a83cd
commit
79b75ff865
21
types/unique-push-id/index.d.ts
vendored
Normal file
21
types/unique-push-id/index.d.ts
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
// Type definitions for unique-push-id 1.0
|
||||
// Project: https://github.com/limit-zero/unique-push-id
|
||||
// Definitions by: Nathan Amick <https://github.com/namick>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.7
|
||||
|
||||
/**
|
||||
* Fancy ID generator that creates 20-character string identifiers with the following properties:
|
||||
*
|
||||
* 1. They're based on timestamp so that they sort *after* any existing ids.
|
||||
* 2. They contain 72-bits of random data after the timestamp so that IDs won't collide with other clients' IDs.
|
||||
* 3. They sort *lexicographically* (so the timestamp is converted to characters that will sort properly).
|
||||
* 4. They're monotonically increasing. Even if you generate more than one in the same timestamp, the
|
||||
* latter ones will sort after the former ones. We do this by using the previous random bits
|
||||
* but "incrementing" them by 1 (only in the case of a timestamp collision).
|
||||
*
|
||||
* @returns A unique, chronological, lexicographical 20-character string identifier.
|
||||
*/
|
||||
declare function pushId(): string;
|
||||
|
||||
export = pushId;
|
||||
24
types/unique-push-id/tsconfig.json
Normal file
24
types/unique-push-id/tsconfig.json
Normal file
@ -0,0 +1,24 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": [
|
||||
"es6"
|
||||
],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"baseUrl": "../",
|
||||
"typeRoots": [
|
||||
"../"
|
||||
],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"esModuleInterop": true
|
||||
},
|
||||
"files": [
|
||||
"index.d.ts",
|
||||
"unique-push-id-tests.ts"
|
||||
]
|
||||
}
|
||||
1
types/unique-push-id/tslint.json
Normal file
1
types/unique-push-id/tslint.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
3
types/unique-push-id/unique-push-id-tests.ts
Normal file
3
types/unique-push-id/unique-push-id-tests.ts
Normal file
@ -0,0 +1,3 @@
|
||||
import pushId from "unique-push-id";
|
||||
|
||||
pushId(); // $ExpectType string
|
||||
Loading…
Reference in New Issue
Block a user