@ideal-postcodes/api-typings
v2.1.0
Published
Typings and other useful javascript abstractions for interacting with the Ideal-Postcodes.co.uk API
Downloads
15,826
Readme
Typings for the Ideal Postcodes API (api.ideal-postcodes.co.uk)
TypeScript typings which define:
- The basic JSON objects returned by our APIs (e.g. addresses
Address
, autocomplete suggestionsAddressSuggestion
, API key statusKeyStatus
) - The overall shape of JSON responses returned by the API (e.g. postcode lookups
PostcodesResponse
, address autocomplete queriesAddressSuggestionResponse
, address search queriesAddressQueryResponse
)
Typings are exported to index.d.ts
when published to npm. The typings in this repository are defined in lib/index.ts
.
Usage
Install package
npm install --save-dev @ideal-postcodes/api-typings
Import interfaces and other definitions
// Import Address type
import { Address } from "@ideal-postcodes/api-typings";
let address: Address;
Links
Benefits of Typings
Code Completion
Typings allow IDEs to provide a richer, more productive environment to develop integrations. This includes providing code completions and suggestions.
Inline Documentation
Our typings also bear documentation which can be rendered in your IDE as you work.
Type Checking
Compile time checks that your library or application appropriately consumes objects and data types returned by our APIs and client libraries
Non-TypeScript Projects
Your integration does not have to be exclusively TypeScript driven to benefit from this typings repository.
Some IDEs (e.g. Visual Studio, Visual Studio Code, Sublime Text) use TypeScript typings to provide inline code completion and documentation for plain JavaScript files.
It is also possible to develop a partial, robust TypeScript integration against our services and subsequently incorporate it in a larger JavaScript project. TypeScript compiles down to plain JavaScript which can conform to ES3 and later. That output can be exported to other JavaScript projects.
Testing
The testing process involves attempting to compile a test file which assigns API fixtures generated by the API to the interfaces exported by this typings library. The tests will fail to compile if the API fixtures fail to conform to types.
npm test
Licence
MIT