mirror of
https://github.com/FlipsideCrypto/DefinitelyTyped.git
synced 2026-02-06 10:56:53 +00:00
Add types for djv (#35136)
This commit is contained in:
parent
e6f841f2f9
commit
bea39a0360
12
types/djv/djv-tests.ts
Normal file
12
types/djv/djv-tests.ts
Normal file
@ -0,0 +1,12 @@
|
||||
import djv = require('djv');
|
||||
|
||||
const env = djv({
|
||||
version: 'draft-06',
|
||||
formats: {},
|
||||
errorHandler: () => {},
|
||||
});
|
||||
|
||||
new djv({ version: 'draft-04' });
|
||||
|
||||
env.addSchema('test');
|
||||
env.addFormat('uri-reference', () => true);
|
||||
56
types/djv/index.d.ts
vendored
Normal file
56
types/djv/index.d.ts
vendored
Normal file
@ -0,0 +1,56 @@
|
||||
// Type definitions for djv 2.1
|
||||
// Project: https://github.com/korzio/djv#readme
|
||||
// Definitions by: Florian Keller <https://github.com/ffflorian>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.2
|
||||
|
||||
interface DjvStatic {
|
||||
(options?: DjvStatic.DjvConfig): DjvStatic.djv;
|
||||
new (options?: DjvStatic.DjvConfig): DjvStatic.djv;
|
||||
expression(strings: string[], ...keys: string[]): (...values: string[]) => string;
|
||||
}
|
||||
|
||||
declare namespace DjvStatic {
|
||||
interface DjvConfig {
|
||||
/** a handler to use for generating custom error messages */
|
||||
errorHandler?: () => void;
|
||||
/** an object containing list of formatters to add for environment */
|
||||
formats?: Record<string, (...values: string[]) => string>;
|
||||
/**
|
||||
* generating object should be considered as inner
|
||||
*
|
||||
* Default value is `false`/`undefined`. If `true`, then it avoid creating variables in a
|
||||
* generated function body, however without proper wrapper function approach will not work.
|
||||
*/
|
||||
inner?: boolean;
|
||||
/** defines which version of json-schema draft to use, draft-04 by default */
|
||||
version?: string;
|
||||
/** handler to apply for environment version */
|
||||
versionConfigure?: (object: object) => void;
|
||||
}
|
||||
|
||||
interface Resolved {
|
||||
schema: object;
|
||||
fn: (...args: any[]) => any;
|
||||
}
|
||||
|
||||
interface djv {
|
||||
resolved: Resolved;
|
||||
|
||||
addFormat(name: string, formatter: string | ((schema: object, tpl: any) => void)): void;
|
||||
|
||||
addSchema(nameOrSchema: string | object, schema?: object): Resolved;
|
||||
|
||||
export(name?: string): string;
|
||||
import(config: object): void;
|
||||
removeSchema(name: string): void;
|
||||
resolve(name: string | object): Resolved;
|
||||
setErrorHandler(errorHandler: (errorType: string, property: any) => string): void;
|
||||
useVersion(version: string, configure?: any): void;
|
||||
validate(name: string, object: object): string | undefined;
|
||||
}
|
||||
}
|
||||
|
||||
declare const DjvStatic: DjvStatic;
|
||||
|
||||
export = DjvStatic;
|
||||
23
types/djv/tsconfig.json
Normal file
23
types/djv/tsconfig.json
Normal file
@ -0,0 +1,23 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": [
|
||||
"es6"
|
||||
],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictFunctionTypes": true,
|
||||
"strictNullChecks": true,
|
||||
"baseUrl": "../",
|
||||
"typeRoots": [
|
||||
"../"
|
||||
],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true
|
||||
},
|
||||
"files": [
|
||||
"index.d.ts",
|
||||
"djv-tests.ts"
|
||||
]
|
||||
}
|
||||
1
types/djv/tslint.json
Normal file
1
types/djv/tslint.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
Loading…
Reference in New Issue
Block a user