npm: @server-state/types
Standard TypeScript definitions for use in Server State projects.
First, add it as a development dependency to your project:
npm install --save-dev @server-state/types
After the installation, check out the provided types:
import { Extension } from '@server-state/types';
const myExtension: Extension<MyConfig> = (config, api) => {
//...
return {
name: 'MyExtension'
};
};
You can also, optionally, add the package to your tsconfig.json
's compilerOptions.typeRoots
array to get access to the most common types via the global ServerStateTypes
namespace:
// tsconfig.json
{
compilerOptions: {
typeRoots: [
'node_modules/@server-state/types',
'node_modules/@types'
// [...]
]
// [...]
}
// [...]
}
// some TypeScript source file
let a: ServerStateTypes.JsonSerializable;
Namespace access is handy when you write in JavaScript and don't want to use import('@server-state/types')
everywhere in your JSDoc comments:
// some JavaScript source file
/**
* @type {ServerStateTypes.JsonSerializable}
*/
let a;
// instead of
/**
* @type {import('@server-state/types').JsonSerializable}
*/
let b;
For all complete list of types, check out the reference: types.server-state.tech
.
├── sample (samples for the types, useful for testing the types)
│ ├── sample.ts
│ ├── sample-js.js
│ └── tsconfig.json
├── src
│ ├── index.ts
│ └── [...]
├── types (built-in build script)
│ ├── index.d.ts
│ └── [...]
├── CHANGELOG.md (DO NOT TOUCH! auto-generated changelog for the package)
├── LICENSE
├── package.json
├── README.md (you're here :P)
└── [...] (configuration files)
Coming soon :wink:
Thank you to all contributors of this repository:
Made with contributors-img.
This repository is part of Server State, a project by fliegwerk.