import type { CreateConnectionRequestInput } from "../src/index.js"; const fields = { callbackUrl: "https://app.example/stuffbox/callback", codeChallenge: "c".repeat(43), scopes: ["assets:read"] as const, state: "state-with-enough-entropy", }; const automatic: CreateConnectionRequestInput = fields; const returning: CreateConnectionRequestInput = { ...fields, clientId: "app_public" }; const legacyAutomatic: CreateConnectionRequestInput = { ...fields, selfHosted: true }; const legacyReturning: CreateConnectionRequestInput = { ...fields, clientId: "app_public", selfHosted: false, }; // @ts-expect-error An automatic request cannot also send a client ID. const mixed: CreateConnectionRequestInput = { ...fields, clientId: "app_public", selfHosted: true }; // @ts-expect-error The old false marker requires a client ID. const missingClient: CreateConnectionRequestInput = { ...fields, selfHosted: false }; void [automatic, returning, legacyAutomatic, legacyReturning, mixed, missingClient];