1.0.2 • Published 6 years ago
json-types v1.0.2
Deprecation Notice
As of TypeScript 3.7, it's no longer necessary to use the workaround in this package for defining valid JSON structures.
This small snippet is all that is required now:
type Json =
  | string
  | number
  | boolean
  | null
  | { [key: string]: Json }
  | Json[];json-types
JSON TypeScript Definitions
A simple typescript definition module that simplifies type checking for valid JSON objects. Useful for defining interfaces and parameter type checking.
Installation
npm i json-typesUsage
import {
  Primitive,
  JSONEntry,
  JSONArray,
  JSONMap,
  JSONData
} from '../json-types'Use Case
import {
  Primitive,
  JSONEntry,
  JSONArray,
  JSONMap,
  JSONData
} from '../json-types'
interface QueryString {
  [key: string]: Primitive | undefined
}
interface APIResponse extends JSONMap {
  address: {
    house_no: number
    street: string
  }
  name: string,
  has_website: false
  files: JSONArray
  metadata: JSONEntry
}
function httpGet (url: string): Promise<JSONData> {
  return requestPromise(url, {
    json: true
  })
}