Create type definition for 'nested-property' (#4004)

* Create type definition for 'nested-property'

* Follow lint
This commit is contained in:
Acid Chicken (硫酸鶏) 2019-02-01 21:08:49 +09:00 committed by GitHub
parent 27268fd6b7
commit 3b30ad5404
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 2 deletions

19
src/@types/nested-property.d.ts vendored Normal file
View file

@ -0,0 +1,19 @@
declare module 'nested-property' {
interface IHasNestedPropertyOptions {
own?: boolean;
}
interface IIsInNestedPropertyOptions {
validPath?: boolean;
}
export function set<T>(object: T, property: string, value: any): T;
export function get(object: object, property: string): any;
export function has(object: object, property: string, options?: IHasNestedPropertyOptions): boolean;
export function hasOwn(object: object, property: string, options?: IHasNestedPropertyOptions): boolean;
export function isIn(object: object, property: string, objectInPath: object, options?: IIsInNestedPropertyOptions): boolean;
}

View file

@ -3,7 +3,7 @@
*/ */
import * as moment from 'moment'; import * as moment from 'moment';
const nestedProperty = require('nested-property'); import * as nestedProperty from 'nested-property';
import autobind from 'autobind-decorator'; import autobind from 'autobind-decorator';
import * as mongo from 'mongodb'; import * as mongo from 'mongodb';
import db from '../db/mongodb'; import db from '../db/mongodb';

View file

@ -17,7 +17,7 @@ import { licenseHtml } from '../../misc/license';
const constants = require('../../const.json'); const constants = require('../../const.json');
import endpoints from '../api/endpoints'; import endpoints from '../api/endpoints';
const locales = require('../../../locales'); const locales = require('../../../locales');
const nestedProperty = require('nested-property'); import * as nestedProperty from 'nested-property';
async function genVars(lang: string): Promise<{ [key: string]: any }> { async function genVars(lang: string): Promise<{ [key: string]: any }> {
const vars = {} as { [key: string]: any }; const vars = {} as { [key: string]: any };