diff --git a/package-lock.json b/package-lock.json
index 900d5cb..e9a0d3b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "@procedure-rpc/procedure.js",
- "version": "0.8.4",
+ "version": "0.9.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@procedure-rpc/procedure.js",
- "version": "0.8.4",
+ "version": "0.9.0",
"funding": [
"https://github.com/procedure-rpc/procedure.js?sponsor=1",
{
@@ -45,7 +45,7 @@
"typed-emitter": "^2.1.0",
"typedoc": "^0.23.10",
"typedoc-plugin-versions": "^0.1.1",
- "typescript": "^4.7.4"
+ "typescript": "^4.8.0"
},
"engines": {
"node": ">=16"
diff --git a/package.json b/package.json
index e01097f..a7322ce 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@procedure-rpc/procedure.js",
- "version": "0.8.4",
+ "version": "0.9.0",
"title": "procedure.js",
"description": "The simple RPC framework for Node.js.",
"main": "./dist/index.js",
@@ -58,7 +58,7 @@
"typed-emitter": "^2.1.0",
"typedoc": "^0.23.10",
"typedoc-plugin-versions": "^0.1.1",
- "typescript": "^4.7.4"
+ "typescript": "^4.8.0"
},
"files": [
"dist/**/*.*js",
diff --git a/src/index.ts b/src/index.ts
index 30c8089..819eb35 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -33,10 +33,7 @@ const uuidNamespace = uuidv5(homepage, uuidv5.URL);
* @template Output Type of output value the procedure returns. Defaults to `undefined`.
* @see [TypedEmitter](https://github.com/andywer/typed-emitter#readme)
*/
-export class Procedure<
- Input extends Nullable = undefined,
- Output extends Nullable = undefined
- >
+export class Procedure
extends (EventEmitter as {
new (): TypedEmitter>;
})
@@ -473,27 +470,21 @@ export class Procedure<
}
export default Procedure;
-/**
- * Represents a nullable value.
- */
-export type Nullable = unknown | null | undefined;
-
/**
* Represents a simple callback function which can take a single input parameter.
* @template Input The type of input parameter the callback accepts. Defaults to `undefined`.
* @template Output The type of output value the callback returns. Defaults to `undefined`.
* @see {@link Procedure}
*/
-export type Callback<
- Input extends Nullable = undefined,
- Output extends Nullable = undefined
-> = (input: Input) => Output;
+export type Callback = (
+ input: Input
+) => Output;
/**
* A response from a {@link call Procedure call}.
* If the call returned successfully, the response will be of shape `{ output: Output }`, otherwise `{ error: ProcedureError }`.
*/
-export type Response