diff --git a/.changeset/soft-lizards-smoke.md b/.changeset/soft-lizards-smoke.md new file mode 100644 index 0000000..d4aed35 --- /dev/null +++ b/.changeset/soft-lizards-smoke.md @@ -0,0 +1,7 @@ +--- +"@andipaetzold/realtime-websocket-client": patch +"@andipaetzold/realtime-rest-client": patch +"@andipaetzold/realtime-server": patch +--- + +Make types compatible with `exactOptionalPropertyTypes` TypeScript config diff --git a/packages/realtime-rest-client/src/types.ts b/packages/realtime-rest-client/src/types.ts index b7e76cc..a15cb76 100644 --- a/packages/realtime-rest-client/src/types.ts +++ b/packages/realtime-rest-client/src/types.ts @@ -6,7 +6,7 @@ export interface RealtimeRESTClientOptions { /** * Required for write operations */ - token?: string; + token?: string | undefined; } export type Patch = Operation[]; diff --git a/packages/realtime-server/src/types.ts b/packages/realtime-server/src/types.ts index d5b07c5..e611db2 100644 --- a/packages/realtime-server/src/types.ts +++ b/packages/realtime-server/src/types.ts @@ -6,22 +6,26 @@ import type { Auth } from "./auth/index.js"; export interface Options { server: HttpServer | HttpsServer | Http2SecureServer; - path?: string; - initialData?: any; - logger?: Logger; - auth?: Auth; - cors?: { - origin: string | string[]; - }; - adminUI?: { - enabled: boolean; - auth: - | false - | { - username: string; - password: string; - }; - }; + path?: string | undefined; + initialData?: any | undefined; + logger?: Logger | undefined; + auth?: Auth | undefined; + cors?: + | { + origin: string | string[]; + } + | undefined; + adminUI?: + | { + enabled: boolean; + auth: + | false + | { + username: string; + password: string; + }; + } + | undefined; } export interface Store { diff --git a/packages/realtime-websocket-client/src/RealtimeWebSocketClient.ts b/packages/realtime-websocket-client/src/RealtimeWebSocketClient.ts index e88ca27..5bfd42b 100644 --- a/packages/realtime-websocket-client/src/RealtimeWebSocketClient.ts +++ b/packages/realtime-websocket-client/src/RealtimeWebSocketClient.ts @@ -20,7 +20,7 @@ interface SubscriptionState { export interface RealtimeWebSocketClientOptions { url: string; - onError?: (error: Error) => void; + onError?: ((error: Error) => void) | undefined; } export class RealtimeWebSocketClient {