@aperture-browser/api-schema 0.0.0-init.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +5 -0
- package/dist/index.d.ts +4380 -0
- package/dist/index.js +1684 -0
- package/dist/index.js.map +1 -0
- package/package.json +42 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/api.gen.ts"],"sourcesContent":["// Generated by packages/api-schema/scripts/generate.ts from api/openapi.yaml. Do not edit.\n// @ts-nocheck\nimport * as Data from \"effect/Data\"\nimport * as Effect from \"effect/Effect\"\nimport type { SchemaError } from \"effect/Schema\"\nimport * as Schema from \"effect/Schema\"\nimport type * as HttpClient from \"effect/unstable/http/HttpClient\"\nimport * as HttpClientError from \"effect/unstable/http/HttpClientError\"\nimport * as HttpClientRequest from \"effect/unstable/http/HttpClientRequest\"\nimport * as HttpClientResponse from \"effect/unstable/http/HttpClientResponse\"\n// non-recursive definitions\nexport type Health = { readonly \"status\": \"ok\", readonly \"color\": \"blue\" | \"green\", readonly \"role\": \"active\" | \"inactive\", readonly \"version\": string, readonly \"activeColor\": \"blue\" | \"green\" }\nexport const Health = Schema.Struct({ \"status\": Schema.Literal(\"ok\").annotate({ \"description\": \"Process health. A successful response currently reports `ok`.\" }), \"color\": Schema.Literals([\"blue\", \"green\"]).annotate({ \"description\": \"Deployment color of the process that handled the request.\" }), \"role\": Schema.Literals([\"active\", \"inactive\"]).annotate({ \"description\": \"Whether this deployment color currently serves active traffic.\" }), \"version\": Schema.String.annotate({ \"description\": \"Build or release version embedded in the running binary.\", \"examples\": [\"1.4.0\"] }), \"activeColor\": Schema.Literals([\"blue\", \"green\"]).annotate({ \"description\": \"Deployment color currently selected as active.\" }) }).annotate({ \"description\": \"Local deployment health and blue-green role information.\", \"examples\": [{ \"status\": \"ok\", \"color\": \"blue\", \"role\": \"active\", \"version\": \"1.4.0\", \"activeColor\": \"blue\" }], \"identifier\": \"Health\" })\nexport type UUIDv7 = string\nexport const UUIDv7 = Schema.String.annotate({ \"description\": \"Time-ordered UUID version 7 generated by Aperture.\", \"examples\": [\"019f6cf0-0000-7000-8000-000000000001\"], \"format\": \"uuid\", \"identifier\": \"UUIDv7\" })\nexport type PrincipalType = \"api_token\" | \"user\" | \"system\"\nexport const PrincipalType = Schema.Literals([\"api_token\", \"user\", \"system\"]).annotate({ \"description\": \"Stable category of the authenticated or audited actor.\", \"examples\": [\"api_token\"], \"identifier\": \"PrincipalType\" })\nexport type AuthorityType = \"system_admin\" | \"tenant\"\nexport const AuthorityType = Schema.Literals([\"system_admin\", \"tenant\"]).annotate({ \"description\": \"Authorization boundary. `system_admin` principals may administer the deployment and select tenants. `tenant` principals act within one effective tenant.\\n\", \"examples\": [\"tenant\"], \"identifier\": \"AuthorityType\" })\nexport type Scope = \"system:admin\" | \"sessions:read\" | \"sessions:write\" | \"snapshots:read\" | \"snapshots:write\" | \"tenant:write\" | \"tenants:write\"\nexport const Scope = Schema.Literals([\"system:admin\", \"sessions:read\", \"sessions:write\", \"snapshots:read\", \"snapshots:write\", \"tenant:write\", \"tenants:write\"]).annotate({ \"description\": \"Permission granted to a principal. `system:admin` implies every scope. Tenant credentials and memberships cannot receive `system:admin` or `tenants:write`.\\n\", \"examples\": [\"sessions:write\"], \"identifier\": \"Scope\" })\nexport type ResourceMode = \"all\" | \"allowlist\"\nexport const ResourceMode = Schema.Literals([\"all\", \"allowlist\"]).annotate({ \"description\": \"Whether a tenant API token can access every tenant resource or only explicit grants.\", \"default\": \"all\", \"examples\": [\"allowlist\"], \"identifier\": \"ResourceMode\" })\nexport type ResourceType = \"session\" | \"snapshot\"\nexport const ResourceType = Schema.Literals([\"session\", \"snapshot\"]).annotate({ \"description\": \"Tenant resource category accepted by API token allowlists.\", \"examples\": [\"session\"], \"identifier\": \"ResourceType\" })\nexport type ErrorDetail = { readonly \"code\": string, readonly \"message\": string }\nexport const ErrorDetail = Schema.Struct({ \"code\": Schema.String.annotate({ \"description\": \"Stable code enumerated by each operation response.\", \"examples\": [\"insufficient_scope\"] }), \"message\": Schema.String.annotate({ \"description\": \"Human-readable explanation. It may include resource or validation context.\", \"examples\": [\"insufficient scope\"] }) }).annotate({ \"description\": \"Stable machine-readable error code with a human-readable explanation.\", \"identifier\": \"ErrorDetail\" })\nexport type BrowserChannel = { readonly \"name\": string }\nexport const BrowserChannel = Schema.Struct({ \"name\": Schema.String.annotate({ \"description\": \"Configured browser channel name.\", \"examples\": [\"chromium\"] }) }).annotate({ \"description\": \"Browser runtime selectable when creating a session.\", \"identifier\": \"BrowserChannel\" })\nexport type PageMeta = { readonly \"limit\": number, readonly \"nextCursor\"?: string, readonly \"hasMore\": boolean }\nexport const PageMeta = Schema.Struct({ \"limit\": Schema.Number.annotate({ \"description\": \"Effective page size after applying the default and maximum.\", \"examples\": [50] }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(1).annotate({ \"expected\": \"a value greater than or equal to 1\" })).check(Schema.isLessThanOrEqualTo(100).annotate({ \"expected\": \"a value less than or equal to 100\" })), \"nextCursor\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Opaque cursor for the next page. Omitted when there is no next page.\", \"examples\": [\"eyJjcmVhdGVkQXQiOiIyMDI2LTA3LTE3VDEyOjAwOjAwWiIsImlkIjoiMDE5ZjZjZjAtMDAwMC03MDAwLTgwMDAtMDAwMDAwMDAwMDAwIn0\"] })), \"hasMore\": Schema.Boolean.annotate({ \"description\": \"Whether another page is available.\", \"examples\": [true] }) }).annotate({ \"description\": \"Cursor pagination metadata for a newest-first result page.\", \"identifier\": \"PageMeta\" })\nexport type TenantInput = { readonly \"displayName\": string }\nexport const TenantInput = Schema.Struct({ \"displayName\": Schema.String.annotate({ \"description\": \"Human-readable tenant name. Leading and trailing whitespace is removed and whitespace-only values are rejected.\", \"examples\": [\"Example engineering\"] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isPattern(new RegExp(\".*\\\\S.*\")).annotate({ \"expected\": \"a string matching the RegExp .*\\\\S.*\" })) }).annotate({ \"description\": \"Tenant fields accepted by create and update operations.\", \"identifier\": \"TenantInput\" })\nexport type UserInput = { readonly \"email\"?: string | null, readonly \"displayName\": string, readonly \"isSystemAdmin\": boolean }\nexport const UserInput = Schema.Struct({ \"email\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Optional normalized login and contact email.\", \"format\": \"email\" })), \"displayName\": Schema.String.check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isPattern(new RegExp(\".*\\\\S.*\")).annotate({ \"expected\": \"a string matching the RegExp .*\\\\S.*\" })), \"isSystemAdmin\": Schema.Boolean.annotate({ \"description\": \"Grants deployment-wide administration independently of tenant memberships.\" }) }).annotate({ \"identifier\": \"UserInput\" })\nexport type UserInvitation = { readonly \"token\": string, readonly \"expiresAt\": string }\nexport const UserInvitation = Schema.Struct({ \"token\": Schema.String.annotate({ \"description\": \"Raw setup token. Store and transmit it as a secret.\" }), \"expiresAt\": Schema.String.annotate({ \"format\": \"date-time\" }) }).annotate({ \"description\": \"One-time account setup secret returned only when created.\", \"identifier\": \"UserInvitation\" })\nexport type TenantScope = \"sessions:read\" | \"sessions:write\" | \"snapshots:read\" | \"snapshots:write\" | \"tenant:write\"\nexport const TenantScope = Schema.Literals([\"sessions:read\", \"sessions:write\", \"snapshots:read\", \"snapshots:write\", \"tenant:write\"]).annotate({ \"description\": \"Scope allowed on a tenant-bound API token.\", \"examples\": [\"sessions:write\"], \"identifier\": \"TenantScope\" })\nexport type SessionStatus = \"creating\" | \"running\" | \"suspended\" | \"deleted\" | \"expired\" | \"failed\"\nexport const SessionStatus = Schema.Literals([\"creating\", \"running\", \"suspended\", \"deleted\", \"expired\", \"failed\"]).annotate({ \"description\": \"Session lifecycle state:\\n\\n- `creating`: browser startup is in progress; the CDP endpoint does not answer yet.\\n- `running`: browser and routing are available and the CDP endpoint answers.\\n- `suspended`: browser is intentionally stopped while retained state remains available.\\n- `deleted`: session is soft-deleted and may be reopened while retained.\\n- `expired`: retention elapsed and the session can no longer be used.\\n- `failed`: startup or reopen failed; retained state may still be reopenable.\\n\", \"examples\": [\"running\"], \"identifier\": \"SessionStatus\" })\nexport type IceServer = { readonly \"urls\": ReadonlyArray<string>, readonly \"username\"?: string, readonly \"credential\"?: string }\nexport const IceServer = Schema.Struct({ \"urls\": Schema.Array(Schema.String).annotate({ \"description\": \"STUN or TURN server URLs.\", \"examples\": [[\"turn:turn.example.com:3478?transport=udp\"]] }), \"username\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"TURN username. Omitted when the server does not require authentication.\", \"examples\": [\"aperture-session\"] })), \"credential\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"TURN credential. Treat it as a secret and do not persist it in logs.\", \"examples\": [\"REDACTED\"] })) }).annotate({ \"description\": \"ICE server configuration supplied to WebRTC consumers.\", \"identifier\": \"IceServer\" })\nexport type StringMap = { readonly [x: string]: string }\nexport const StringMap = Schema.Record(Schema.String, Schema.String).annotate({ \"description\": \"Arbitrary string key-value metadata. Tag-writing operations additionally reject blank keys and blank values.\", \"examples\": [{ \"environment\": \"production\", \"region\": \"eu-west-1\" }], \"identifier\": \"StringMap\" })\nexport type SessionCollaborationCapabilities = { readonly \"editorToken\": string, readonly \"viewerToken\": string }\nexport const SessionCollaborationCapabilities = Schema.Struct({ \"editorToken\": Schema.String.annotate({ \"examples\": [\"ape_019f6cf0000070008000000000000010_REDACTED\"] }), \"viewerToken\": Schema.String.annotate({ \"examples\": [\"apv_019f6cf0000070008000000000000010_REDACTED\"] }) }).annotate({ \"description\": \"Owner-visible role-scoped secrets used to build collaboration links.\", \"identifier\": \"SessionCollaborationCapabilities\" })\nexport type SessionProxy = { readonly \"upstream\": \"direct\" | \"proxy\" | \"tunnel\", readonly \"url\"?: string, readonly \"tunnel\"?: { readonly \"url\"?: string }, readonly \"bypass\"?: string }\nexport const SessionProxy = Schema.Struct({ \"upstream\": Schema.Literals([\"direct\", \"proxy\", \"tunnel\"]).annotate({ \"description\": \"Upstream strategy for new connections.\", \"examples\": [\"tunnel\"] }), \"url\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Generic upstream proxy URL. Omitted unless `upstream` is `proxy`. The password is masked, so this value cannot be replayed as a write.\", \"examples\": [\"socks5://user:pass@proxy.example.com:1080\"] })), \"tunnel\": Schema.optionalKey(Schema.Struct({ \"url\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Compound tunnel URL.\", \"examples\": [\"wss+yamux+socks5://tunnel.example.com/t/019f6cf0-0000-7000-8000-000000000010\"] })) }).annotate({ \"description\": \"Tunnel endpoint. Omitted unless `upstream` is `tunnel`. The secret is never returned.\" })), \"bypass\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Extra `--proxy-bypass-list` entries.\", \"examples\": [\"*.internal.example.com\"] })) }).annotate({ \"description\": \"Stored session egress proxy assignment. Secrets are write-only — tunnel auth never appears here, and an upstream proxy URL comes back with its password masked.\", \"identifier\": \"SessionProxy\" })\nexport type BrowserConfig = { readonly \"channel\": string, readonly \"args\"?: ReadonlyArray<string> }\nexport const BrowserConfig = Schema.Struct({ \"channel\": Schema.String.annotate({ \"description\": \"Channel returned by `GET /api/browser/channels`.\", \"examples\": [\"chromium\"] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isPattern(new RegExp(\".*\\\\S.*\")).annotate({ \"expected\": \"a string matching the RegExp .*\\\\S.*\" })), \"args\": Schema.optionalKey(Schema.Array(Schema.String).annotate({ \"description\": \"Additional Chromium command-line arguments. Aperture rejects arguments that conflict with supervisor-owned behavior or deployment policy.\", \"examples\": [[\"--lang=en-US\"]] })) }).annotate({ \"description\": \"Browser runtime configuration used to create or reopen the session.\", \"identifier\": \"BrowserConfig\" })\nexport type BrowserStorageEntry = { readonly \"name\": string, readonly \"value\": string }\nexport const BrowserStorageEntry = Schema.Struct({ \"name\": Schema.String, \"value\": Schema.String.annotate({ \"description\": \"Browser storage value. Never log this field.\" }) }).annotate({ \"identifier\": \"BrowserStorageEntry\" })\nexport type InitialBrowserScrollPosition = { readonly \"x\": number, readonly \"y\": number }\nexport const InitialBrowserScrollPosition = Schema.Struct({ \"x\": Schema.Number.check(Schema.isFinite().annotate({ \"expected\": \"a finite number\" })), \"y\": Schema.Number.check(Schema.isFinite().annotate({ \"expected\": \"a finite number\" })) }).annotate({ \"identifier\": \"InitialBrowserScrollPosition\" })\nexport type InitialBrowserElementPathStep = { readonly \"tag\": string, readonly \"index\": number }\nexport const InitialBrowserElementPathStep = Schema.Struct({ \"tag\": Schema.String.check(Schema.isPattern(new RegExp(\"^[a-z][a-z0-9-]*$\")).annotate({ \"expected\": \"a string matching the RegExp ^[a-z][a-z0-9-]*$\" })), \"index\": Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" })) }).annotate({ \"identifier\": \"InitialBrowserElementPathStep\" })\nexport type InitialBrowserControlSelection = { readonly \"start\": number, readonly \"end\": number, readonly \"direction\": \"forward\" | \"backward\" | \"none\" }\nexport const InitialBrowserControlSelection = Schema.Struct({ \"start\": Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" })), \"end\": Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" })), \"direction\": Schema.Literals([\"forward\", \"backward\", \"none\"]) }).annotate({ \"identifier\": \"InitialBrowserControlSelection\" })\nexport type BrowserCookieSameSite = \"Strict\" | \"Lax\" | \"None\"\nexport const BrowserCookieSameSite = Schema.Literals([\"Strict\", \"Lax\", \"None\"]).annotate({ \"identifier\": \"BrowserCookieSameSite\" })\nexport type InitialBrowserCookiePartitionKey = { readonly \"topLevelSite\": string, readonly \"hasCrossSiteAncestor\"?: boolean }\nexport const InitialBrowserCookiePartitionKey = Schema.Struct({ \"topLevelSite\": Schema.String.annotate({ \"format\": \"uri\" }).check(Schema.isPattern(new RegExp(\"^https?:\\\\/\\\\/[^/]+$\")).annotate({ \"expected\": \"a string matching the RegExp ^https?:\\\\/\\\\/[^/]+$\" })), \"hasCrossSiteAncestor\": Schema.optionalKey(Schema.Boolean) }).annotate({ \"identifier\": \"InitialBrowserCookiePartitionKey\" })\nexport type InitialIndexedDBKeyPath = { readonly \"kind\": \"none\" | \"string\" | \"array\", readonly \"value\"?: ReadonlyArray<string> }\nexport const InitialIndexedDBKeyPath = Schema.Struct({ \"kind\": Schema.Literals([\"none\", \"string\", \"array\"]), \"value\": Schema.optionalKey(Schema.Array(Schema.String)) }).annotate({ \"description\": \"Object-store key path. String paths contain one value; array paths contain at least one.\", \"identifier\": \"InitialIndexedDBKeyPath\" })\nexport type InitialIndexedDBIndexKeyPath = { readonly \"kind\": \"string\" | \"array\", readonly \"value\": ReadonlyArray<string> }\nexport const InitialIndexedDBIndexKeyPath = Schema.Struct({ \"kind\": Schema.Literals([\"string\", \"array\"]), \"value\": Schema.Array(Schema.String).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })) }).annotate({ \"description\": \"Index key path. String paths contain one value; array paths contain at least one.\", \"identifier\": \"InitialIndexedDBIndexKeyPath\" })\nexport type InitialIndexedDBRecord = { readonly \"key\": string, readonly \"value\": string }\nexport const InitialIndexedDBRecord = Schema.Struct({ \"key\": Schema.String.annotate({ \"description\": \"JSON-encoded structured-clone key.\" }), \"value\": Schema.String.annotate({ \"description\": \"JSON-encoded structured-clone value.\" }) }).annotate({ \"identifier\": \"InitialIndexedDBRecord\" })\nexport type InitialOPFSFile = { readonly \"path\": string, readonly \"body\": string }\nexport const InitialOPFSFile = Schema.Struct({ \"path\": Schema.String.check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })), \"body\": Schema.String.annotate({ \"contentEncoding\": \"base64\" }) }).annotate({ \"identifier\": \"InitialOPFSFile\" })\nexport type ProxyTunnelConfig = { readonly \"url\"?: string, readonly \"auth\"?: string }\nexport const ProxyTunnelConfig = Schema.Struct({ \"url\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Compound tunnel URL (`ws+yamux+socks5://` or `wss+yamux+socks5://`).\", \"examples\": [\"wss+yamux+socks5://tunnel.example.com/t/019f6cf0-0000-7000-8000-000000000010\"] })), \"auth\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Per-assignment bearer secret for the tunnel handshake. Write-only; never returned.\", \"examples\": [\"REDACTED\"] })) }).annotate({ \"description\": \"Tunnel endpoint for the `tunnel` upstream. Minted by the tunnel operator.\", \"identifier\": \"ProxyTunnelConfig\" })\nexport type CursorVisibility = { readonly \"visible\": boolean }\nexport const CursorVisibility = Schema.Struct({ \"visible\": Schema.Boolean.annotate({ \"description\": \"Whether to include the remote cursor in live streams and recordings.\" }) }).annotate({ \"description\": \"Whether the remote browser cursor is composited into session media.\", \"identifier\": \"CursorVisibility\" })\nexport type Recording = { readonly \"recordingId\": string, readonly \"mode\": \"tab\" | \"viewer\", readonly \"targetId\": string, readonly \"captureGeneration\": number, readonly \"status\": \"starting\" | \"running\" | \"stopped\" | \"failed\", readonly \"stopReason\"?: string, readonly \"relativePath\": string, readonly \"startedAt\": string, readonly \"stoppedAt\"?: string, readonly \"sizeBytes\"?: number, readonly \"fps\": number, readonly \"bitrateKbps\": number, readonly \"codec\": \"vp8\" | \"h264-va\" }\nexport const Recording = Schema.Struct({ \"recordingId\": Schema.String.annotate({ \"description\": \"Stable recording identifier retained across target changes.\", \"format\": \"uuid\" }), \"mode\": Schema.Literals([\"tab\", \"viewer\"]).annotate({ \"description\": \"Tab recordings stay on their specified top-level target; viewer recordings follow a live session client's selected top-level target and cannot be explicitly retargeted.\" }), \"targetId\": Schema.String.annotate({ \"description\": \"Identifier of the top-level target currently recorded.\" }), \"captureGeneration\": Schema.Number.annotate({ \"description\": \"Assignment generation for the current top-level target.\", \"format\": \"int64\" }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" })), \"status\": Schema.Literals([\"starting\", \"running\", \"stopped\", \"failed\"]), \"stopReason\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Lifecycle reason recorded after the recording stops or fails.\" })), \"relativePath\": Schema.String.annotate({ \"description\": \"Path below the session root; absolute host paths are never exposed.\", \"examples\": [\"recordings/recording-550e8400-e29b-41d4-a716-446655440000.webm\"] }), \"startedAt\": Schema.String.annotate({ \"format\": \"date-time\" }), \"stoppedAt\": Schema.optionalKey(Schema.String.annotate({ \"format\": \"date-time\" })), \"sizeBytes\": Schema.optionalKey(Schema.Number.annotate({ \"format\": \"int64\" }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"fps\": Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(1).annotate({ \"expected\": \"a value greater than or equal to 1\" })), \"bitrateKbps\": Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(1).annotate({ \"expected\": \"a value greater than or equal to 1\" })), \"codec\": Schema.Literals([\"vp8\", \"h264-va\"]) }).annotate({ \"description\": \"One logical recording of a top-level target.\", \"identifier\": \"Recording\" })\nexport type CreateSessionRecordingInput = { readonly \"targetId\": string, readonly \"fps\"?: number, readonly \"bitrateKbps\"?: number, readonly \"codec\"?: \"vp8\" | \"h264-va\" }\nexport const CreateSessionRecordingInput = Schema.Struct({ \"targetId\": Schema.String.annotate({ \"description\": \"Identifier of the ready top-level target to record.\" }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })), \"fps\": Schema.optionalKey(Schema.Number.annotate({ \"description\": \"Requested frames per second. Omit or use a non-positive value for the instance default.\", \"examples\": [60] }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" }))), \"bitrateKbps\": Schema.optionalKey(Schema.Number.annotate({ \"description\": \"Requested video bitrate in kilobits per second. Omit or use a non-positive value for the instance default.\", \"examples\": [6000] }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" }))), \"codec\": Schema.optionalKey(Schema.Literals([\"vp8\", \"h264-va\"]).annotate({ \"description\": \"Video codec. Omit for the instance default.\", \"examples\": [\"vp8\"] })) }).annotate({ \"description\": \"Top-level target and optional recording settings.\", \"identifier\": \"CreateSessionRecordingInput\" })\nexport type RetargetSessionRecordingInput = { readonly \"targetId\": string }\nexport const RetargetSessionRecordingInput = Schema.Struct({ \"targetId\": Schema.String.annotate({ \"description\": \"Identifier of the ready destination top-level target.\" }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })) }).annotate({ \"description\": \"Destination for a running tab recording.\", \"identifier\": \"RetargetSessionRecordingInput\" })\nexport type SessionFile = { readonly \"name\": string, readonly \"relativePath\": string, readonly \"size\": number, readonly \"modifiedAt\": string, readonly \"mimeType\": string }\nexport const SessionFile = Schema.Struct({ \"name\": Schema.String.annotate({ \"description\": \"File name without directory components.\", \"examples\": [\"screencast-20260801T120000Z.webm\"] }), \"relativePath\": Schema.String.annotate({ \"description\": \"Path below the session root. The first component is `downloads` or `recordings`.\", \"examples\": [\"recordings/screencast-20260801T120000Z.webm\"] }), \"size\": Schema.Number.annotate({ \"description\": \"File size in bytes.\", \"examples\": [1048576], \"format\": \"int64\" }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" })), \"modifiedAt\": Schema.String.annotate({ \"description\": \"Last file modification time.\", \"examples\": [\"2026-08-01T12:05:00Z\"], \"format\": \"date-time\" }), \"mimeType\": Schema.String.annotate({ \"description\": \"Detected media type.\", \"examples\": [\"video/webm\"] }) }).annotate({ \"description\": \"Regular file retained with a browser session.\", \"identifier\": \"SessionFile\" })\nexport type SessionFileDownloadURLInput = { readonly \"relativePath\": string, readonly \"ttlSeconds\"?: number }\nexport const SessionFileDownloadURLInput = Schema.Struct({ \"relativePath\": Schema.String.annotate({ \"description\": \"Path from a `SessionFile` result.\", \"examples\": [\"recordings/screencast-20260801T120000Z.webm\"] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })), \"ttlSeconds\": Schema.optionalKey(Schema.Number.annotate({ \"description\": \"Requested lifetime in seconds. Omit it to use `signed_file_url_ttl`; values above `signed_file_url_max_ttl` are rejected.\", \"examples\": [900] }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(1).annotate({ \"expected\": \"a value greater than or equal to 1\" }))) }).annotate({ \"description\": \"Session file path and requested signed URL lifetime.\", \"identifier\": \"SessionFileDownloadURLInput\" })\nexport type SessionFileDownloadURL = { readonly \"url\": string, readonly \"expiresAt\": string }\nexport const SessionFileDownloadURL = Schema.Struct({ \"url\": Schema.String.annotate({ \"description\": \"URL containing a path-bound `apf_` token.\", \"examples\": [\"https://aperture.example.com/sessions/019f6cf0-0000-7000-8000-000000000010/files/recordings/screencast-20260801T120000Z.webm?token=apf_REDACTED\"], \"format\": \"uri\" }), \"expiresAt\": Schema.String.annotate({ \"description\": \"Time after which the URL is rejected.\", \"examples\": [\"2026-08-01T12:20:00Z\"], \"format\": \"date-time\" }) }).annotate({ \"description\": \"Signed attachment URL for one session file.\", \"identifier\": \"SessionFileDownloadURL\" })\nexport type UpdateSnapshotInput = { readonly \"description\"?: string | null }\nexport const UpdateSnapshotInput = Schema.Struct({ \"description\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"New description. Send `null` to clear it; an empty string is stored as an empty description.\", \"examples\": [\"Updated signed-in state\"] })) }).annotate({ \"description\": \"Replacement snapshot description.\", \"identifier\": \"UpdateSnapshotInput\" })\nexport type Tenant = { readonly \"id\": UUIDv7, readonly \"displayName\": string, readonly \"createdAt\": string, readonly \"deletedAt\"?: string | null }\nexport const Tenant = Schema.Struct({ \"id\": Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Tenant identifier.\" }), \"displayName\": Schema.String.annotate({ \"description\": \"Human-readable tenant name.\", \"examples\": [\"Example engineering\"] }), \"createdAt\": Schema.String.annotate({ \"description\": \"Time the tenant was created.\", \"examples\": [\"2026-07-17T12:00:00Z\"], \"format\": \"date-time\" }), \"deletedAt\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Soft-deactivation time, or `null` for an active tenant.\", \"examples\": [null], \"format\": \"date-time\" })) }).annotate({ \"description\": \"Tenant account. Deletion is a reversible soft deactivation.\", \"identifier\": \"Tenant\" })\nexport type User = { readonly \"id\": UUIDv7, readonly \"email\"?: string | null, readonly \"displayName\": string, readonly \"isSystemAdmin\": boolean, readonly \"createdAt\": string, readonly \"updatedAt\": string, readonly \"disabledAt\"?: string | null, readonly \"passwordSetupStatus\"?: \"available\" | \"configured\" | \"email_required\" | \"user_disabled\" | \"login_disabled\" }\nexport const User = Schema.Struct({ \"id\": UUIDv7, \"email\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"format\": \"email\" })), \"displayName\": Schema.String, \"isSystemAdmin\": Schema.Boolean, \"createdAt\": Schema.String.annotate({ \"format\": \"date-time\" }), \"updatedAt\": Schema.String.annotate({ \"format\": \"date-time\" }), \"disabledAt\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"format\": \"date-time\" })), \"passwordSetupStatus\": Schema.optionalKey(Schema.Literals([\"available\", \"configured\", \"email_required\", \"user_disabled\", \"login_disabled\"]).annotate({ \"description\": \"Password setup state included by the get-user operation.\" })) }).annotate({ \"identifier\": \"User\" })\nexport type SessionBulkInput = { readonly \"ids\": ReadonlyArray<UUIDv7> }\nexport const SessionBulkInput = Schema.Struct({ \"ids\": Schema.Array(UUIDv7).annotate({ \"description\": \"Up to 100 unique UUIDv7 values. An empty array is valid.\", \"examples\": [[\"019f6cf0-0000-7000-8000-000000000010\", \"019f6cf0-0000-7000-8000-000000000011\"]] }).check(Schema.isMaxLength(100).annotate({ \"expected\": \"a value with a length of at most 100\" })).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })) }).annotate({ \"description\": \"Ordered session IDs for a tenant-scoped bulk lookup. Missing, foreign, and deleted IDs are omitted from the result.\", \"identifier\": \"SessionBulkInput\" })\nexport type Event = { readonly \"id\": UUIDv7, readonly \"tenantId\": UUIDv7, readonly \"resourceType\": string, readonly \"resourceId\": string, readonly \"type\": string, readonly \"message\": string, readonly \"data\": { readonly [x: string]: Schema.Json }, readonly \"createdAt\": string }\nexport const Event = Schema.Struct({ \"id\": Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Event identifier.\" }), \"tenantId\": Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Tenant that owns the event.\" }), \"resourceType\": Schema.String.annotate({ \"description\": \"Resource category associated with the event. Currently session events are the primary source; new categories may be added.\", \"examples\": [\"session\"] }), \"resourceId\": Schema.String.annotate({ \"description\": \"Identifier of the associated resource. Its format depends on `resourceType`.\", \"examples\": [\"019f6cf0-0000-7000-8000-000000000010\"] }), \"type\": Schema.String.annotate({ \"description\": \"Extensible event type used for programmatic handling.\", \"examples\": [\"session.token_rotated\"] }), \"message\": Schema.String.annotate({ \"description\": \"Human-readable event summary.\", \"examples\": [\"session token rotated\"] }), \"data\": Schema.Record(Schema.String, Schema.Json.annotate({ \"expected\": \"JSON value\" })).annotate({ \"description\": \"Event-specific JSON payload, such as error details or upload metadata.\", \"examples\": [{ \"reason\": \"manual rotation\" }] }), \"createdAt\": Schema.String.annotate({ \"description\": \"Time the event was recorded.\", \"examples\": [\"2026-07-17T12:30:00Z\"], \"format\": \"date-time\" }) }).annotate({ \"description\": \"Immutable tenant-scoped audit or lifecycle event.\", \"identifier\": \"Event\" })\nexport type AuditEvent = { readonly \"id\": UUIDv7, readonly \"actorType\": PrincipalType, readonly \"actorId\"?: string | null, readonly \"tenantId\"?: UUIDv7 | null, readonly \"action\": string, readonly \"resourceType\": string, readonly \"resourceId\"?: string | null, readonly \"data\": { readonly [x: string]: Schema.Json }, readonly \"createdAt\": string }\nexport const AuditEvent = Schema.Struct({ \"id\": UUIDv7, \"actorType\": PrincipalType, \"actorId\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])), \"tenantId\": Schema.optionalKey(Schema.Union([UUIDv7, Schema.Null], { mode: \"oneOf\" })), \"action\": Schema.String.annotate({ \"examples\": [\"tenant_membership.upserted\"] }), \"resourceType\": Schema.String.annotate({ \"examples\": [\"tenant_membership\"] }), \"resourceId\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])), \"data\": Schema.Record(Schema.String, Schema.Json.annotate({ \"expected\": \"JSON value\" })), \"createdAt\": Schema.String.annotate({ \"format\": \"date-time\" }) }).annotate({ \"identifier\": \"AuditEvent\" })\nexport type ResourceGrant = { readonly \"resourceType\": ResourceType, readonly \"resourceId\": UUIDv7 }\nexport const ResourceGrant = Schema.Struct({ \"resourceType\": ResourceType, \"resourceId\": UUIDv7 }).annotate({ \"description\": \"Access to one existing tenant session or snapshot by its stable UUIDv7 identifier.\", \"identifier\": \"ResourceGrant\" })\nexport type Error = { readonly \"error\": ErrorDetail }\nexport const Error = Schema.Struct({ \"error\": ErrorDetail }).annotate({ \"description\": \"Standard error envelope returned by REST API operations.\", \"identifier\": \"Error\" })\nexport type BrowserChannels = { readonly \"channels\": ReadonlyArray<BrowserChannel> }\nexport const BrowserChannels = Schema.Struct({ \"channels\": Schema.Array(BrowserChannel) }).annotate({ \"description\": \"Browser channels enabled on this deployment.\", \"examples\": [{ \"channels\": [{ \"name\": \"chromium\" }] }], \"identifier\": \"BrowserChannels\" })\nexport type TenantMembership = { readonly \"tenantId\": UUIDv7, readonly \"userId\": UUIDv7, readonly \"scopes\": ReadonlyArray<TenantScope>, readonly \"createdAt\": string, readonly \"updatedAt\": string }\nexport const TenantMembership = Schema.Struct({ \"tenantId\": UUIDv7, \"userId\": UUIDv7, \"scopes\": Schema.Array(TenantScope).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })), \"createdAt\": Schema.String.annotate({ \"format\": \"date-time\" }), \"updatedAt\": Schema.String.annotate({ \"format\": \"date-time\" }) }).annotate({ \"identifier\": \"TenantMembership\" })\nexport type TenantMembershipInput = { readonly \"scopes\": ReadonlyArray<TenantScope> }\nexport const TenantMembershipInput = Schema.Struct({ \"scopes\": Schema.Array(TenantScope).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })) }).annotate({ \"identifier\": \"TenantMembershipInput\" })\nexport type SessionMedia = { readonly \"mode\": \"auto\" | \"cdp\", readonly \"webrtcProducer\": boolean, readonly \"iceServers\"?: ReadonlyArray<IceServer> }\nexport const SessionMedia = Schema.Struct({ \"mode\": Schema.Literals([\"auto\", \"cdp\"]).annotate({ \"description\": \"Configured media mode. `auto` enables deployment-selected media support; `cdp` exposes Chrome DevTools access only.\", \"examples\": [\"auto\"] }), \"webrtcProducer\": Schema.Boolean.annotate({ \"description\": \"Whether the compositor WebRTC producer is available for this session.\", \"examples\": [true] }), \"iceServers\": Schema.optionalKey(Schema.Array(IceServer).annotate({ \"description\": \"ICE configuration for WebRTC setup. Omitted when WebRTC is unavailable or does not need configured ICE servers.\" })) }).annotate({ \"description\": \"Media capabilities currently available for the session.\", \"identifier\": \"SessionMedia\" })\nexport type InitialCacheStorageEntry = { readonly \"url\": string, readonly \"requestHeaders\": StringMap, readonly \"responseHeaders\": StringMap, readonly \"responseStatus\": number, readonly \"responseStatusText\": string, readonly \"responseBody\": string }\nexport const InitialCacheStorageEntry = Schema.Struct({ \"url\": Schema.String.annotate({ \"format\": \"uri\" }), \"requestHeaders\": StringMap, \"responseHeaders\": StringMap, \"responseStatus\": Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(100).annotate({ \"expected\": \"a value greater than or equal to 100\" })).check(Schema.isLessThanOrEqualTo(599).annotate({ \"expected\": \"a value less than or equal to 599\" })), \"responseStatusText\": Schema.String, \"responseBody\": Schema.String.annotate({ \"contentEncoding\": \"base64\" }) }).annotate({ \"identifier\": \"InitialCacheStorageEntry\" })\nexport type ReplaceTagsInput = { readonly \"tags\": StringMap }\nexport const ReplaceTagsInput = Schema.Struct({ \"tags\": Schema.suspend((): Schema.Codec<StringMap> => StringMap).annotate({ \"description\": \"Complete tag map. Keys and values must contain non-whitespace characters.\" }) }).annotate({ \"description\": \"Complete replacement tag set. The map may be empty to clear all tags.\", \"examples\": [{ \"tags\": { \"environment\": \"production\", \"region\": \"eu-west-1\" } }], \"identifier\": \"ReplaceTagsInput\" })\nexport type PromoteSessionInput = { readonly \"name\": string, readonly \"description\"?: string | null, readonly \"force\"?: boolean, readonly \"tags\"?: StringMap }\nexport const PromoteSessionInput = Schema.Struct({ \"name\": Schema.String.annotate({ \"description\": \"Tenant-unique snapshot name. Leading and trailing whitespace is removed.\", \"examples\": [\"signed-in-base\"] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isPattern(new RegExp(\".*\\\\S.*\")).annotate({ \"expected\": \"a string matching the RegExp .*\\\\S.*\" })), \"description\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Optional snapshot description. `null` creates the snapshot without a description.\", \"examples\": [\"Signed-in storefront state for checkout tests\"] })), \"force\": Schema.optionalKey(Schema.Boolean.annotate({ \"description\": \"Deleted snapshot names are reused automatically. Set `true` to replace an active snapshot, which is renamed to its tombstone name and retained for the configured snapshot retention period.\", \"default\": false })), \"tags\": Schema.optionalKey(Schema.suspend((): Schema.Codec<StringMap> => StringMap).annotate({ \"description\": \"Initial complete tag map for the new snapshot.\" })) }).annotate({ \"description\": \"Snapshot metadata created from a stopped, retained session.\", \"examples\": [{ \"name\": \"signed-in-base\", \"description\": \"Signed-in storefront state for checkout tests\", \"force\": false, \"tags\": { \"application\": \"storefront\", \"environment\": \"staging\" } }], \"identifier\": \"PromoteSessionInput\" })\nexport type Snapshot = { readonly \"id\": UUIDv7, readonly \"name\": string, readonly \"tenantId\": UUIDv7, readonly \"description\"?: string | null, readonly \"parentSnapshotId\"?: UUIDv7, readonly \"promotedFromSessionId\"?: UUIDv7, readonly \"createdAt\": string, readonly \"deletedAt\"?: string | null, readonly \"expiresAt\"?: string, readonly \"tags\"?: StringMap }\nexport const Snapshot = Schema.Struct({ \"id\": Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Snapshot identifier.\" }), \"name\": Schema.String.annotate({ \"description\": \"Human-selected tenant-unique snapshot name.\", \"examples\": [\"signed-in-base\"] }), \"tenantId\": Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Tenant that owns the snapshot.\" }), \"description\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Operator-provided description, or `null` when none is set.\", \"examples\": [\"Signed-in storefront state for checkout tests\"] })), \"parentSnapshotId\": Schema.optionalKey(Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Base snapshot from which the source session was created. Omitted for snapshots without a parent.\" })), \"promotedFromSessionId\": Schema.optionalKey(Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Session whose retained overlay produced this snapshot. Omitted when lineage is unavailable.\" })), \"createdAt\": Schema.String.annotate({ \"description\": \"Time the snapshot was created.\", \"examples\": [\"2026-07-17T12:45:00Z\"], \"format\": \"date-time\" }), \"deletedAt\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Soft-deletion time, or `null` for an active snapshot.\", \"examples\": [null], \"format\": \"date-time\" })), \"expiresAt\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Purge eligibility time for a deleted snapshot. Omitted for active snapshots.\", \"examples\": [\"2026-08-16T12:45:00Z\"], \"format\": \"date-time\" })), \"tags\": Schema.optionalKey(Schema.suspend((): Schema.Codec<StringMap> => StringMap).annotate({ \"description\": \"Snapshot metadata tags. Omitted when no tags are set.\" })) }).annotate({ \"description\": \"Reusable retained browser filesystem state. Deletion is soft until the retention deadline.\", \"identifier\": \"Snapshot\" })\nexport type InitialTargetStorageOrigin = { readonly \"origin\": string, readonly \"entries\": ReadonlyArray<BrowserStorageEntry> }\nexport const InitialTargetStorageOrigin = Schema.Struct({ \"origin\": Schema.String.annotate({ \"format\": \"uri\" }).check(Schema.isPattern(new RegExp(\"^https?:\\\\/\\\\/[^/]+$\")).annotate({ \"expected\": \"a string matching the RegExp ^https?:\\\\/\\\\/[^/]+$\" })), \"entries\": Schema.Array(BrowserStorageEntry) }).annotate({ \"identifier\": \"InitialTargetStorageOrigin\" })\nexport type InitialBrowserElementLocator = { readonly \"tag\": string, readonly \"id\"?: string, readonly \"name\"?: string, readonly \"inputType\"?: string, readonly \"autocomplete\"?: string, readonly \"ariaLabel\"?: string, readonly \"placeholder\"?: string, readonly \"path\": ReadonlyArray<InitialBrowserElementPathStep> }\nexport const InitialBrowserElementLocator = Schema.Struct({ \"tag\": Schema.String.check(Schema.isPattern(new RegExp(\"^[a-z][a-z0-9-]*$\")).annotate({ \"expected\": \"a string matching the RegExp ^[a-z][a-z0-9-]*$\" })), \"id\": Schema.optionalKey(Schema.String), \"name\": Schema.optionalKey(Schema.String), \"inputType\": Schema.optionalKey(Schema.String), \"autocomplete\": Schema.optionalKey(Schema.String), \"ariaLabel\": Schema.optionalKey(Schema.String), \"placeholder\": Schema.optionalKey(Schema.String), \"path\": Schema.Array(InitialBrowserElementPathStep).check(Schema.isMaxLength(256).annotate({ \"expected\": \"a value with a length of at most 256\" })) }).annotate({ \"description\": \"Semantic element identity with a structural fallback. It is not a CSS selector.\", \"identifier\": \"InitialBrowserElementLocator\" })\nexport type InitialBrowserCookie = { readonly \"name\": string, readonly \"value\": string, readonly \"domain\": string, readonly \"hostOnly\"?: boolean, readonly \"path\": string, readonly \"expires\"?: number, readonly \"httpOnly\"?: boolean, readonly \"secure\"?: boolean, readonly \"sameSite\"?: BrowserCookieSameSite, readonly \"partitionKey\"?: InitialBrowserCookiePartitionKey }\nexport const InitialBrowserCookie = Schema.Struct({ \"name\": Schema.String.check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })), \"value\": Schema.String.annotate({ \"description\": \"Cookie value. Never log this field.\" }), \"domain\": Schema.String.annotate({ \"examples\": [\".example.com\"] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })), \"hostOnly\": Schema.optionalKey(Schema.Boolean.annotate({ \"description\": \"Scope the cookie to exactly `domain`, without subdomains. `domain` must then be a plain hostname.\", \"default\": false })), \"path\": Schema.String.annotate({ \"examples\": [\"/\"] }).check(Schema.isPattern(new RegExp(\"^\\\\/\")).annotate({ \"expected\": \"a string matching the RegExp ^\\\\/\" })), \"expires\": Schema.optionalKey(Schema.Number.annotate({ \"description\": \"Unix timestamp in seconds. Omit for a session cookie.\" }).check(Schema.isFinite().annotate({ \"expected\": \"a finite number\" })).check(Schema.isGreaterThan(0).annotate({ \"expected\": \"a value greater than 0\" }))), \"httpOnly\": Schema.optionalKey(Schema.Boolean.annotate({ \"default\": false })), \"secure\": Schema.optionalKey(Schema.Boolean.annotate({ \"default\": false })), \"sameSite\": Schema.optionalKey(BrowserCookieSameSite), \"partitionKey\": Schema.optionalKey(InitialBrowserCookiePartitionKey) }).annotate({ \"description\": \"Cookie imported into the new browser profile.\", \"identifier\": \"InitialBrowserCookie\" })\nexport type InitialIndexedDBIndex = { readonly \"name\": string, readonly \"keyPath\": InitialIndexedDBIndexKeyPath, readonly \"unique\": boolean, readonly \"multiEntry\": boolean }\nexport const InitialIndexedDBIndex = Schema.Struct({ \"name\": Schema.String, \"keyPath\": InitialIndexedDBIndexKeyPath, \"unique\": Schema.Boolean, \"multiEntry\": Schema.Boolean }).annotate({ \"identifier\": \"InitialIndexedDBIndex\" })\nexport type ProxyConfig = { readonly \"upstream\"?: \"direct\" | \"proxy\" | \"tunnel\", readonly \"url\"?: string, readonly \"tunnel\"?: ProxyTunnelConfig, readonly \"bypass\"?: string }\nexport const ProxyConfig = Schema.Struct({ \"upstream\": Schema.optionalKey(Schema.Literals([\"direct\", \"proxy\", \"tunnel\"]).annotate({ \"description\": \"Upstream strategy for new connections. Defaults to `direct`.\", \"examples\": [\"tunnel\"] })), \"url\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Generic upstream proxy URL (`http`, `https`, `socks`, `socks5`, `socks5h`). Required when `upstream` is `proxy`. Credentials go in the userinfo (`socks5://user:pass@host:1080`) and are sent as Basic `Proxy-Authorization` for `http`/`https` or RFC 1929 username/password for the socks schemes. An omitted port defaults to 1080 (socks), 80 (http) or 443 (https).\", \"examples\": [\"socks5://user:pass@proxy.example.com:1080\"] })), \"tunnel\": Schema.optionalKey(ProxyTunnelConfig), \"bypass\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Extra `--proxy-bypass-list` entries. Loopback is always bypassed.\", \"examples\": [\"*.internal.example.com\"] })) }).annotate({ \"description\": \"Session egress proxy assignment. Omitted for direct egress.\", \"identifier\": \"ProxyConfig\" })\nexport type UpdateProxyAssignment = { readonly \"upstream\"?: \"direct\" | \"proxy\" | \"tunnel\", readonly \"url\"?: string, readonly \"tunnel\"?: ProxyTunnelConfig, readonly \"bypass\"?: string, readonly \"drain\"?: boolean }\nexport const UpdateProxyAssignment = Schema.Struct({ \"upstream\": Schema.optionalKey(Schema.Literals([\"direct\", \"proxy\", \"tunnel\"]).annotate({ \"description\": \"Upstream strategy for new connections. Defaults to `direct`.\", \"examples\": [\"tunnel\"] })), \"url\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Generic upstream proxy URL (`http`, `https`, `socks`, `socks5`, `socks5h`). Required when `upstream` is `proxy`. Credentials go in the userinfo (`socks5://user:pass@host:1080`) and are sent as Basic `Proxy-Authorization` for `http`/`https` or RFC 1929 username/password for the socks schemes. An omitted port defaults to 1080 (socks), 80 (http) or 443 (https).\", \"examples\": [\"socks5://user:pass@proxy.example.com:1080\"] })), \"tunnel\": Schema.optionalKey(ProxyTunnelConfig), \"bypass\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Extra `--proxy-bypass-list` entries. Loopback is always bypassed.\", \"examples\": [\"*.internal.example.com\"] })), \"drain\": Schema.optionalKey(Schema.Boolean.annotate({ \"description\": \"Reset live tunnel streams instead of letting them drain. New connections use the new assignment either way.\", \"examples\": [false] })) }).annotate({ \"description\": \"Replacement session egress proxy assignment.\", \"identifier\": \"UpdateProxyAssignment\" })\nexport type TenantPage = { readonly \"data\": ReadonlyArray<Tenant>, readonly \"meta\": PageMeta }\nexport const TenantPage = Schema.Struct({ \"data\": Schema.Array(Tenant), \"meta\": PageMeta }).annotate({ \"description\": \"Cursor-paginated tenants.\", \"identifier\": \"TenantPage\" })\nexport type UserPage = { readonly \"data\": ReadonlyArray<User>, readonly \"meta\": PageMeta }\nexport const UserPage = Schema.Struct({ \"data\": Schema.Array(User), \"meta\": PageMeta }).annotate({ \"identifier\": \"UserPage\" })\nexport type EventPage = { readonly \"data\": ReadonlyArray<Event>, readonly \"meta\": PageMeta }\nexport const EventPage = Schema.Struct({ \"data\": Schema.Array(Event), \"meta\": PageMeta }).annotate({ \"description\": \"Cursor-paginated tenant events.\", \"identifier\": \"EventPage\" })\nexport type AuditEventPage = { readonly \"data\": ReadonlyArray<AuditEvent>, readonly \"meta\": PageMeta }\nexport const AuditEventPage = Schema.Struct({ \"data\": Schema.Array(AuditEvent), \"meta\": PageMeta }).annotate({ \"identifier\": \"AuditEventPage\" })\nexport type Principal = { readonly \"type\": PrincipalType, readonly \"id\": string, readonly \"authMethod\": \"api_token\" | \"oidc\" | \"passkey\" | \"password\", readonly \"tokenId\": UUIDv7 | null, readonly \"userId\"?: UUIDv7 | null, readonly \"name\": string, readonly \"authorityType\": AuthorityType, readonly \"tenantId\"?: UUIDv7 | null, readonly \"scopes\": ReadonlyArray<Scope>, readonly \"resourceMode\": ResourceMode, readonly \"resourceGrants\": ReadonlyArray<ResourceGrant> }\nexport const Principal = Schema.Struct({ \"type\": PrincipalType, \"id\": Schema.String.annotate({ \"description\": \"Stable identifier of the authenticated subject.\" }), \"authMethod\": Schema.Literals([\"api_token\", \"oidc\", \"passkey\", \"password\"]).annotate({ \"description\": \"Authentication mechanism used for this request.\" }), \"tokenId\": Schema.Union([UUIDv7, Schema.Null], { mode: \"oneOf\" }).annotate({ \"description\": \"Identifier of the API token used for authentication, or `null` for account-backed sessions.\" }), \"userId\": Schema.optionalKey(Schema.Union([UUIDv7, Schema.Null], { mode: \"oneOf\" }).annotate({ \"description\": \"User identifier for account-backed authentication, or `null` for API tokens.\" })), \"name\": Schema.String.annotate({ \"description\": \"Display name of the authenticated credential or user.\", \"examples\": [\"deployment automation\"] }), \"authorityType\": AuthorityType, \"tenantId\": Schema.optionalKey(Schema.Union([UUIDv7, Schema.Null], { mode: \"oneOf\" }).annotate({ \"description\": \"Effective tenant for tenant authority, or `null` when no tenant is selected.\" })), \"scopes\": Schema.Array(Scope).annotate({ \"description\": \"Scopes granted to the authenticated principal.\" }).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })), \"resourceMode\": ResourceMode, \"resourceGrants\": Schema.Array(ResourceGrant).annotate({ \"description\": \"Explicit grants when `resourceMode` is `allowlist`; empty when it is `all`.\" }).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })) }).annotate({ \"description\": \"Authenticated subject identity and authorization context.\", \"identifier\": \"Principal\" })\nexport type Token = { readonly \"id\": UUIDv7, readonly \"authorityType\": AuthorityType, readonly \"tenantId\"?: UUIDv7 | null, readonly \"name\": string, readonly \"scopes\": ReadonlyArray<Scope>, readonly \"createdAt\": string, readonly \"createdByType\": PrincipalType, readonly \"createdById\": UUIDv7 | null, readonly \"parentTokenId\": UUIDv7 | null, readonly \"resourceMode\": ResourceMode, readonly \"resourceGrants\": ReadonlyArray<ResourceGrant>, readonly \"expiresAt\"?: string | null, readonly \"revokedAt\"?: string | null }\nexport const Token = Schema.Struct({ \"id\": Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Token identifier. This is not the bearer secret.\" }), \"authorityType\": AuthorityType, \"tenantId\": Schema.optionalKey(Schema.Union([UUIDv7, Schema.Null], { mode: \"oneOf\" }).annotate({ \"description\": \"Bound tenant for a tenant token, or `null` for a system administrator token.\" })), \"name\": Schema.String.annotate({ \"description\": \"Operator-assigned token name, unique within its authority and tenant context.\", \"examples\": [\"ci automation\"] }), \"scopes\": Schema.Array(Scope).annotate({ \"description\": \"Unique scopes granted to the token.\" }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })), \"createdAt\": Schema.String.annotate({ \"description\": \"Time the token was created.\", \"examples\": [\"2026-07-17T12:00:00Z\"], \"format\": \"date-time\" }), \"createdByType\": Schema.suspend((): Schema.Codec<PrincipalType> => PrincipalType).annotate({ \"description\": \"Principal category that created the token.\" }), \"createdById\": Schema.Union([UUIDv7, Schema.Null], { mode: \"oneOf\" }).annotate({ \"description\": \"User or API token identifier that created the token, or `null` for trusted local system actions.\" }), \"parentTokenId\": Schema.Union([UUIDv7, Schema.Null], { mode: \"oneOf\" }).annotate({ \"description\": \"API token used to delegate this token, or `null` when a user or trusted local system created it.\" }), \"resourceMode\": ResourceMode, \"resourceGrants\": Schema.Array(ResourceGrant).annotate({ \"description\": \"Explicit session and snapshot grants when `resourceMode` is `allowlist`.\" }).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })), \"expiresAt\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Authentication expiry time, or `null` when the token does not expire automatically.\", \"examples\": [\"2026-08-17T12:00:00Z\"], \"format\": \"date-time\" })), \"revokedAt\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Revocation time, or `null` while the token is active.\", \"examples\": [null], \"format\": \"date-time\" })) }).annotate({ \"description\": \"API token metadata. The raw bearer secret is never included in this schema.\", \"identifier\": \"Token\" })\nexport type CreateAdminTokenInput = { readonly \"name\": string, readonly \"authorityType\": \"system_admin\", readonly \"scopes\": ReadonlyArray<Scope>, readonly \"expiresAt\"?: string | null, readonly \"resourceMode\"?: \"all\", readonly \"resourceGrants\"?: ReadonlyArray<ResourceGrant> } | { readonly \"name\": string, readonly \"authorityType\": \"tenant\", readonly \"tenantId\": UUIDv7, readonly \"scopes\": ReadonlyArray<TenantScope>, readonly \"expiresAt\"?: string | null, readonly \"resourceMode\"?: ResourceMode, readonly \"resourceGrants\"?: ReadonlyArray<ResourceGrant> }\nexport const CreateAdminTokenInput = Schema.Union([Schema.Struct({ \"name\": Schema.String.annotate({ \"description\": \"Operator-assigned name. Leading and trailing whitespace is removed.\", \"examples\": [\"platform admin\"] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isPattern(new RegExp(\".*\\\\S.*\")).annotate({ \"expected\": \"a string matching the RegExp .*\\\\S.*\" })), \"authorityType\": Schema.Literal(\"system_admin\"), \"scopes\": Schema.Array(Scope).annotate({ \"description\": \"Must include `system:admin`.\", \"examples\": [[\"system:admin\"]] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })), \"expiresAt\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Optional RFC3339 timestamp. Omit or send `null` for no automatic expiry.\", \"examples\": [\"2026-08-17T12:00:00Z\"], \"format\": \"date-time\" })), \"resourceMode\": Schema.optionalKey(Schema.Literal(\"all\").annotate({ \"description\": \"System administrator tokens cannot use resource allowlists.\", \"default\": \"all\" })), \"resourceGrants\": Schema.optionalKey(Schema.Array(ResourceGrant).annotate({ \"description\": \"Must be empty for a system administrator token.\" }).check(Schema.isMaxLength(0).annotate({ \"expected\": \"a value with a length of at most 0\" }))) }), Schema.Struct({ \"name\": Schema.String.annotate({ \"description\": \"Operator-assigned name. Leading and trailing whitespace is removed.\", \"examples\": [\"tenant automation\"] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isPattern(new RegExp(\".*\\\\S.*\")).annotate({ \"expected\": \"a string matching the RegExp .*\\\\S.*\" })), \"authorityType\": Schema.Literal(\"tenant\"), \"tenantId\": Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Active tenant to bind permanently to the token.\" }), \"scopes\": Schema.Array(TenantScope).annotate({ \"description\": \"Tenant-compatible scopes. `system:admin` and `tenants:write` are rejected.\", \"examples\": [[\"sessions:read\", \"sessions:write\"]] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })), \"expiresAt\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Optional RFC3339 timestamp. Omit or send `null` for no automatic expiry.\", \"examples\": [\"2026-08-17T12:00:00Z\"], \"format\": \"date-time\" })), \"resourceMode\": Schema.optionalKey(ResourceMode), \"resourceGrants\": Schema.optionalKey(Schema.Array(ResourceGrant).annotate({ \"description\": \"Existing tenant resources granted when `resourceMode` is `allowlist`; must be empty for `all`.\" }).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" }))) })], { mode: \"oneOf\" }).annotate({ \"description\": \"Token definition accepted by the system administrator token endpoint.\", \"identifier\": \"CreateAdminTokenInput\" })\nexport type CreateTenantTokenInput = { readonly \"name\": string, readonly \"scopes\": ReadonlyArray<TenantScope>, readonly \"expiresAt\"?: string | null, readonly \"resourceMode\"?: ResourceMode, readonly \"resourceGrants\"?: ReadonlyArray<ResourceGrant> }\nexport const CreateTenantTokenInput = Schema.Struct({ \"name\": Schema.String.annotate({ \"description\": \"Operator-assigned name. Leading and trailing whitespace is removed.\", \"examples\": [\"browser worker\"] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isPattern(new RegExp(\".*\\\\S.*\")).annotate({ \"expected\": \"a string matching the RegExp .*\\\\S.*\" })), \"scopes\": Schema.Array(TenantScope).annotate({ \"description\": \"Tenant-compatible scopes. `system:admin` and `tenants:write` are rejected.\", \"examples\": [[\"sessions:read\", \"sessions:write\"]] }).check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" })), \"expiresAt\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Optional RFC3339 timestamp. Omit or send `null` for no automatic expiry.\", \"examples\": [\"2026-08-17T12:00:00Z\"], \"format\": \"date-time\" })), \"resourceMode\": Schema.optionalKey(ResourceMode), \"resourceGrants\": Schema.optionalKey(Schema.Array(ResourceGrant).annotate({ \"description\": \"Existing tenant resources granted when `resourceMode` is `allowlist`; must be empty for `all`.\" }).check(Schema.isUnique().annotate({ \"expected\": \"an array with unique items\" }))) }).annotate({ \"description\": \"Token definition automatically bound to the authenticated tenant.\", \"identifier\": \"CreateTenantTokenInput\" })\nexport type Session = { readonly \"id\": UUIDv7, readonly \"tenantId\": UUIDv7, readonly \"baseSnapshotName\"?: string, readonly \"label\"?: string, readonly \"status\": SessionStatus, readonly \"browserChannel\"?: string, readonly \"media\": SessionMedia, readonly \"createdAt\": string, readonly \"startedAt\"?: string, readonly \"stoppedAt\"?: string, readonly \"deletedAt\"?: string | null, readonly \"expiresAt\": string, readonly \"lastConnectedAt\"?: string, readonly \"suspendedAt\"?: string, readonly \"tags\"?: StringMap, readonly \"cdpUrl\"?: string, readonly \"sessionToken\"?: string, readonly \"collaboration\"?: SessionCollaborationCapabilities, readonly \"proxy\"?: SessionProxy }\nexport const Session = Schema.Struct({ \"id\": Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Session identifier.\" }), \"tenantId\": Schema.suspend((): Schema.Codec<UUIDv7> => UUIDv7).annotate({ \"description\": \"Tenant that owns the session.\" }), \"baseSnapshotName\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Snapshot name used as the session base. Omitted for a blank session.\", \"examples\": [\"signed-in-base\"] })), \"label\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Optional operator-facing session label.\", \"examples\": [\"checkout smoke test\"] })), \"status\": SessionStatus, \"browserChannel\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Browser channel used to create and reopen the session.\", \"examples\": [\"chromium\"] })), \"media\": SessionMedia, \"createdAt\": Schema.String.annotate({ \"description\": \"Time the session record was created.\", \"examples\": [\"2026-07-17T12:00:00Z\"], \"format\": \"date-time\" }), \"startedAt\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Most recent successful browser start time. Omitted before startup succeeds.\", \"examples\": [\"2026-07-17T12:00:03Z\"], \"format\": \"date-time\" })), \"stoppedAt\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Most recent browser stop time. Omitted while no stop has occurred.\", \"examples\": [\"2026-07-17T13:00:00Z\"], \"format\": \"date-time\" })), \"deletedAt\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Soft-deletion time, or `null` for a session that has not been deleted.\", \"examples\": [null], \"format\": \"date-time\" })), \"expiresAt\": Schema.String.annotate({ \"description\": \"Retention deadline after which the session and its overlay may be purged. This is not token expiry.\", \"examples\": [\"2026-07-24T12:00:00Z\"], \"format\": \"date-time\" }), \"lastConnectedAt\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Most recent routed client activity time. Omitted until a client connects.\", \"examples\": [\"2026-07-17T12:30:00Z\"], \"format\": \"date-time\" })), \"suspendedAt\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Most recent suspension time. Omitted unless the session is suspended.\", \"examples\": [\"2026-07-17T13:00:00Z\"], \"format\": \"date-time\" })), \"tags\": Schema.optionalKey(Schema.suspend((): Schema.Codec<StringMap> => StringMap).annotate({ \"description\": \"Session metadata tags. Omitted when no tags are set.\" })), \"cdpUrl\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Authenticated Chrome DevTools endpoint. Omitted when the session is not currently routable. Use it with `sessionToken`.\", \"examples\": [\"https://aperture.example.com/cdp/019f6cf0-0000-7000-8000-000000000010\"], \"format\": \"uri\" })), \"sessionToken\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Session access secret returned when live access credentials are available. Rotation invalidates the previous token immediately.\", \"examples\": [\"aps_019f6cf0000070008000000000000010_REDACTED\"] })), \"collaboration\": Schema.optionalKey(SessionCollaborationCapabilities), \"proxy\": Schema.optionalKey(SessionProxy) }).annotate({ \"description\": \"Browser session state, retention metadata, tags, and currently available access credentials.\", \"identifier\": \"Session\" })\nexport type InitialCacheStorageCache = { readonly \"name\": string, readonly \"entries\": ReadonlyArray<InitialCacheStorageEntry> }\nexport const InitialCacheStorageCache = Schema.Struct({ \"name\": Schema.String, \"entries\": Schema.Array(InitialCacheStorageEntry) }).annotate({ \"identifier\": \"InitialCacheStorageCache\" })\nexport type SnapshotMutation = { readonly \"snapshot\": Snapshot }\nexport const SnapshotMutation = Schema.Struct({ \"snapshot\": Snapshot }).annotate({ \"description\": \"Snapshot returned after a mutation.\", \"identifier\": \"SnapshotMutation\" })\nexport type SnapshotPage = { readonly \"data\": ReadonlyArray<Snapshot>, readonly \"meta\": PageMeta }\nexport const SnapshotPage = Schema.Struct({ \"data\": Schema.Array(Snapshot), \"meta\": PageMeta }).annotate({ \"description\": \"Cursor-paginated snapshots.\", \"identifier\": \"SnapshotPage\" })\nexport type InitialBrowserControlState = { readonly \"locator\": InitialBrowserElementLocator, readonly \"value\": string, readonly \"checked\"?: boolean, readonly \"selectedIndices\"?: ReadonlyArray<number>, readonly \"selection\"?: InitialBrowserControlSelection }\nexport const InitialBrowserControlState = Schema.Struct({ \"locator\": InitialBrowserElementLocator, \"value\": Schema.String, \"checked\": Schema.optionalKey(Schema.Boolean), \"selectedIndices\": Schema.optionalKey(Schema.Array(Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" })))), \"selection\": Schema.optionalKey(InitialBrowserControlSelection) }).annotate({ \"identifier\": \"InitialBrowserControlState\" })\nexport type InitialBrowserContentEditableState = { readonly \"locator\": InitialBrowserElementLocator, readonly \"html\": string }\nexport const InitialBrowserContentEditableState = Schema.Struct({ \"locator\": InitialBrowserElementLocator, \"html\": Schema.String }).annotate({ \"identifier\": \"InitialBrowserContentEditableState\" })\nexport type InitialBrowserElementScrollPosition = { readonly \"locator\": InitialBrowserElementLocator, readonly \"x\": number, readonly \"y\": number }\nexport const InitialBrowserElementScrollPosition = Schema.Struct({ \"locator\": InitialBrowserElementLocator, \"x\": Schema.Number.check(Schema.isFinite().annotate({ \"expected\": \"a finite number\" })), \"y\": Schema.Number.check(Schema.isFinite().annotate({ \"expected\": \"a finite number\" })) }).annotate({ \"identifier\": \"InitialBrowserElementScrollPosition\" })\nexport type InitialBrowserSelectionEndpoint = { readonly \"locator\": InitialBrowserElementLocator, readonly \"nodePath\": ReadonlyArray<number>, readonly \"offset\": number }\nexport const InitialBrowserSelectionEndpoint = Schema.Struct({ \"locator\": InitialBrowserElementLocator, \"nodePath\": Schema.Array(Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))).check(Schema.isMaxLength(256).annotate({ \"expected\": \"a value with a length of at most 256\" })), \"offset\": Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" })) }).annotate({ \"identifier\": \"InitialBrowserSelectionEndpoint\" })\nexport type InitialIndexedDBObjectStore = { readonly \"name\": string, readonly \"keyPath\": InitialIndexedDBKeyPath, readonly \"autoIncrement\": boolean, readonly \"indexes\": ReadonlyArray<InitialIndexedDBIndex>, readonly \"records\": ReadonlyArray<InitialIndexedDBRecord> }\nexport const InitialIndexedDBObjectStore = Schema.Struct({ \"name\": Schema.String, \"keyPath\": InitialIndexedDBKeyPath, \"autoIncrement\": Schema.Boolean, \"indexes\": Schema.Array(InitialIndexedDBIndex), \"records\": Schema.Array(InitialIndexedDBRecord) }).annotate({ \"identifier\": \"InitialIndexedDBObjectStore\" })\nexport type AuthMe = { readonly \"principal\": Principal, readonly \"selectedTenant\": Tenant | null, readonly \"availableTenants\": ReadonlyArray<Tenant> }\nexport const AuthMe = Schema.Struct({ \"principal\": Principal, \"selectedTenant\": Schema.Union([Tenant, Schema.Null], { mode: \"oneOf\" }).annotate({ \"description\": \"Effective tenant, or `null` when the principal has not selected one.\" }), \"availableTenants\": Schema.Array(Tenant).annotate({ \"description\": \"Active tenant memberships available to an account-backed principal. API-token principals return an empty array.\" }) }).annotate({ \"description\": \"Current principal and its effective tenant selection.\", \"identifier\": \"AuthMe\" })\nexport type TokenPage = { readonly \"data\": ReadonlyArray<Token>, readonly \"meta\": PageMeta }\nexport const TokenPage = Schema.Struct({ \"data\": Schema.Array(Token), \"meta\": PageMeta }).annotate({ \"description\": \"Cursor-paginated API token metadata without bearer secrets.\", \"identifier\": \"TokenPage\" })\nexport type CreateTokenResponse = { readonly \"token\": Token, readonly \"rawToken\": string }\nexport const CreateTokenResponse = Schema.Struct({ \"token\": Token, \"rawToken\": Schema.String.annotate({ \"description\": \"One-time Aperture API bearer token. Store it immediately; later reads return only token metadata.\", \"examples\": [\"apt_019f6cf0000070008000000000000002_REDACTED\"] }) }).annotate({ \"description\": \"Created token metadata and its one-time bearer secret.\", \"identifier\": \"CreateTokenResponse\" })\nexport type SessionPage = { readonly \"data\": ReadonlyArray<Session>, readonly \"meta\": PageMeta }\nexport const SessionPage = Schema.Struct({ \"data\": Schema.Array(Session), \"meta\": PageMeta }).annotate({ \"description\": \"Cursor-paginated browser sessions.\", \"identifier\": \"SessionPage\" })\nexport type CreateSessionResult = { readonly \"session\": Session, readonly \"cdpUrl\": string, readonly \"sessionToken\": string }\nexport const CreateSessionResult = Schema.Struct({ \"session\": Session, \"cdpUrl\": Schema.String.annotate({ \"description\": \"Authenticated Chrome DevTools endpoint for the new session.\", \"examples\": [\"https://aperture.example.com/cdp/019f6cf0-0000-7000-8000-000000000010\"], \"format\": \"uri\" }), \"sessionToken\": Schema.String.annotate({ \"description\": \"Initial session access secret. Store it immediately.\", \"examples\": [\"aps_019f6cf0000070008000000000000010_REDACTED\"] }) }).annotate({ \"description\": \"Newly created session and its one-time initial access credentials.\", \"identifier\": \"CreateSessionResult\" })\nexport type SessionBulkResponse = { readonly \"sessions\": ReadonlyArray<Session> }\nexport const SessionBulkResponse = Schema.Struct({ \"sessions\": Schema.Array(Session) }).annotate({ \"description\": \"Sessions found for the requested IDs, preserving request order.\", \"identifier\": \"SessionBulkResponse\" })\nexport type SessionMutation = { readonly \"session\": Session, readonly \"cdpUrl\"?: string, readonly \"sessionToken\"?: string }\nexport const SessionMutation = Schema.Struct({ \"session\": Session, \"cdpUrl\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Current Chrome DevTools endpoint. Omitted by operations that do not expose live access.\", \"examples\": [\"https://aperture.example.com/cdp/019f6cf0-0000-7000-8000-000000000010\"], \"format\": \"uri\" })), \"sessionToken\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"Current raw session access secret. Omitted by operations that do not expose or replace credentials.\", \"examples\": [\"aps_019f6cf0000070008000000000000010_REDACTED\"] })) }).annotate({ \"description\": \"Updated session and operation-specific live access credentials when available.\", \"identifier\": \"SessionMutation\" })\nexport type InitialBrowserDocumentSelection = { readonly \"anchor\": InitialBrowserSelectionEndpoint, readonly \"focus\": InitialBrowserSelectionEndpoint }\nexport const InitialBrowserDocumentSelection = Schema.Struct({ \"anchor\": InitialBrowserSelectionEndpoint, \"focus\": InitialBrowserSelectionEndpoint }).annotate({ \"identifier\": \"InitialBrowserDocumentSelection\" })\nexport type InitialIndexedDBDatabase = { readonly \"name\": string, readonly \"version\": number, readonly \"objectStores\": ReadonlyArray<InitialIndexedDBObjectStore> }\nexport const InitialIndexedDBDatabase = Schema.Struct({ \"name\": Schema.String, \"version\": Schema.Number.check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(1).annotate({ \"expected\": \"a value greater than or equal to 1\" })), \"objectStores\": Schema.Array(InitialIndexedDBObjectStore) }).annotate({ \"identifier\": \"InitialIndexedDBDatabase\" })\nexport type InitialBrowserDocumentState = { readonly \"version\": 1, readonly \"windowName\"?: string, readonly \"historyState\"?: string, readonly \"controls\": ReadonlyArray<InitialBrowserControlState>, readonly \"contentEditables\": ReadonlyArray<InitialBrowserContentEditableState>, readonly \"scrollPositions\": ReadonlyArray<InitialBrowserElementScrollPosition>, readonly \"focus\"?: InitialBrowserElementLocator, readonly \"selection\"?: InitialBrowserDocumentSelection }\nexport const InitialBrowserDocumentState = Schema.Struct({ \"version\": Schema.Literal(1), \"windowName\": Schema.optionalKey(Schema.String), \"historyState\": Schema.optionalKey(Schema.String.annotate({ \"description\": \"JSON-encoded structured-clone history state.\" })), \"controls\": Schema.Array(InitialBrowserControlState).check(Schema.isMaxLength(10000).annotate({ \"expected\": \"a value with a length of at most 10000\" })), \"contentEditables\": Schema.Array(InitialBrowserContentEditableState).check(Schema.isMaxLength(10000).annotate({ \"expected\": \"a value with a length of at most 10000\" })), \"scrollPositions\": Schema.Array(InitialBrowserElementScrollPosition).check(Schema.isMaxLength(10000).annotate({ \"expected\": \"a value with a length of at most 10000\" })), \"focus\": Schema.optionalKey(InitialBrowserElementLocator), \"selection\": Schema.optionalKey(InitialBrowserDocumentSelection) }).annotate({ \"description\": \"Sensitive top-document state replayed during initial navigation.\", \"identifier\": \"InitialBrowserDocumentState\" })\nexport type InitialStorageOrigin = { readonly \"origin\": string, readonly \"ancestorOrigins\"?: ReadonlyArray<string>, readonly \"localStorage\": ReadonlyArray<BrowserStorageEntry>, readonly \"indexedDB\"?: ReadonlyArray<InitialIndexedDBDatabase>, readonly \"cacheStorage\"?: ReadonlyArray<InitialCacheStorageCache>, readonly \"opfs\"?: ReadonlyArray<InitialOPFSFile> }\nexport const InitialStorageOrigin = Schema.Struct({ \"origin\": Schema.String.annotate({ \"examples\": [\"https://example.com\"], \"format\": \"uri\" }).check(Schema.isPattern(new RegExp(\"^https?:\\\\/\\\\/[^/]+$\")).annotate({ \"expected\": \"a string matching the RegExp ^https?:\\\\/\\\\/[^/]+$\" })), \"ancestorOrigins\": Schema.optionalKey(Schema.Array(Schema.String.annotate({ \"format\": \"uri\" }).check(Schema.isPattern(new RegExp(\"^https?:\\\\/\\\\/[^/]+$\")).annotate({ \"expected\": \"a string matching the RegExp ^https?:\\\\/\\\\/[^/]+$\" }))).annotate({ \"description\": \"Top-down HTTP origin chain for partitioned storage. Omitted for a top-level origin.\" }).check(Schema.isMaxLength(32).annotate({ \"expected\": \"a value with a length of at most 32\" }))), \"localStorage\": Schema.Array(BrowserStorageEntry), \"indexedDB\": Schema.optionalKey(Schema.Array(InitialIndexedDBDatabase)), \"cacheStorage\": Schema.optionalKey(Schema.Array(InitialCacheStorageCache)), \"opfs\": Schema.optionalKey(Schema.Array(InitialOPFSFile)) }).annotate({ \"description\": \"Profile-scoped browser storage imported for one exact HTTP origin and ancestor partition.\", \"identifier\": \"InitialStorageOrigin\" })\nexport type InitialBrowserTarget = { readonly \"url\": string, readonly \"sessionStorage\"?: ReadonlyArray<InitialTargetStorageOrigin>, readonly \"scroll\"?: InitialBrowserScrollPosition, readonly \"documentState\"?: InitialBrowserDocumentState, readonly \"openerTargetIndex\"?: number, readonly \"active\"?: boolean }\nexport const InitialBrowserTarget = Schema.Struct({ \"url\": Schema.String.annotate({ \"description\": \"Absolute HTTP or HTTPS URL without embedded credentials.\", \"examples\": [\"https://example.com/account\"], \"format\": \"uri\" }).check(Schema.isPattern(new RegExp(\"^https?:\\\\/\\\\/\")).annotate({ \"expected\": \"a string matching the RegExp ^https?:\\\\/\\\\/\" })), \"sessionStorage\": Schema.optionalKey(Schema.Array(InitialTargetStorageOrigin).annotate({ \"description\": \"Per-origin session storage installed in target frames before page scripts execute.\" })), \"scroll\": Schema.optionalKey(InitialBrowserScrollPosition), \"documentState\": Schema.optionalKey(InitialBrowserDocumentState), \"openerTargetIndex\": Schema.optionalKey(Schema.Number.annotate({ \"description\": \"Index of another initial target that opened this target.\" }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"active\": Schema.optionalKey(Schema.Boolean.annotate({ \"description\": \"Select this target for the first connected session client. At most one target may be active.\", \"default\": false })) }).annotate({ \"description\": \"HTTP page and target-scoped state opened during session creation.\", \"identifier\": \"InitialBrowserTarget\" })\nexport type InitialBrowserStorageState = { readonly \"cookies\": ReadonlyArray<InitialBrowserCookie>, readonly \"origins\": ReadonlyArray<InitialStorageOrigin> }\nexport const InitialBrowserStorageState = Schema.Struct({ \"cookies\": Schema.Array(InitialBrowserCookie).check(Schema.isMaxLength(10000).annotate({ \"expected\": \"a value with a length of at most 10000\" })), \"origins\": Schema.Array(InitialStorageOrigin).check(Schema.isMaxLength(100).annotate({ \"expected\": \"a value with a length of at most 100\" })) }).annotate({ \"description\": \"Profile-scoped browser storage imported before initial browser targets are opened.\", \"identifier\": \"InitialBrowserStorageState\" })\nexport type CreateSessionInput = { readonly \"baseSnapshotName\"?: string | null, readonly \"label\"?: string | null, readonly \"browser\": BrowserConfig, readonly \"initialTargets\"?: ReadonlyArray<InitialBrowserTarget>, readonly \"storageState\"?: InitialBrowserStorageState, readonly \"tags\"?: StringMap, readonly \"proxy\"?: ProxyConfig }\nexport const CreateSessionInput = Schema.Struct({ \"baseSnapshotName\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Active snapshot used as the browser filesystem base. Omit, send `null`, or send an empty value for a blank session.\", \"examples\": [\"signed-in-base\"] })), \"label\": Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]).annotate({ \"description\": \"Optional operator-facing label for the session.\", \"examples\": [\"checkout smoke test\"] })), \"browser\": BrowserConfig, \"initialTargets\": Schema.optionalKey(Schema.Array(InitialBrowserTarget).annotate({ \"description\": \"Browser targets that replace the browser's startup page after storage import. Result order follows input order; opener dependencies may be created first.\" }).check(Schema.isMaxLength(50).annotate({ \"expected\": \"a value with a length of at most 50\" }))), \"storageState\": Schema.optionalKey(InitialBrowserStorageState), \"tags\": Schema.optionalKey(Schema.suspend((): Schema.Codec<StringMap> => StringMap).annotate({ \"description\": \"Initial session tags.\" })), \"proxy\": Schema.optionalKey(ProxyConfig) }).annotate({ \"description\": \"Configuration for a new retained browser session.\", \"examples\": [{ \"baseSnapshotName\": \"signed-in-base\", \"label\": \"checkout smoke test\", \"browser\": { \"channel\": \"chromium\", \"args\": [\"--lang=en-US\"] }, \"initialTargets\": [{ \"url\": \"https://example.com/account\" }], \"storageState\": { \"cookies\": [], \"origins\": [{ \"origin\": \"https://example.com\", \"localStorage\": [{ \"name\": \"access-token\", \"value\": \"REDACTED\" }] }] }, \"tags\": { \"environment\": \"staging\", \"suite\": \"checkout\" } }], \"identifier\": \"CreateSessionInput\" })\n// schemas\nexport type GetHealth200 = Health\nexport const GetHealth200 = Health\nexport type GetCurrentPrincipalParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const GetCurrentPrincipalParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type GetCurrentPrincipal200 = AuthMe\nexport const GetCurrentPrincipal200 = AuthMe\nexport type GetCurrentPrincipaldefault = Error\nexport const GetCurrentPrincipaldefault = Error\nexport type ListBrowserChannels200 = BrowserChannels\nexport const ListBrowserChannels200 = BrowserChannels\nexport type ListBrowserChannelsdefault = Error\nexport const ListBrowserChannelsdefault = Error\nexport type ListTenantsParams = { readonly \"limit\"?: number, readonly \"cursor\"?: string, readonly \"deleted\"?: \"active\" | \"deleted\" | \"all\", readonly \"includeDeleted\"?: boolean }\nexport const ListTenantsParams = Schema.Struct({ \"limit\": Schema.optionalKey(Schema.Number.annotate({ \"default\": 50 }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"cursor\": Schema.optionalKey(Schema.String), \"deleted\": Schema.optionalKey(Schema.Literals([\"active\", \"deleted\", \"all\"]).annotate({ \"default\": \"active\" })), \"includeDeleted\": Schema.optionalKey(Schema.Boolean.annotate({ \"default\": false })) })\nexport type ListTenants200 = TenantPage\nexport const ListTenants200 = TenantPage\nexport type ListTenantsdefault = Error\nexport const ListTenantsdefault = Error\nexport type CreateTenantRequestJson = TenantInput\nexport const CreateTenantRequestJson = TenantInput\nexport type CreateTenant201 = Tenant\nexport const CreateTenant201 = Tenant\nexport type CreateTenantdefault = Error\nexport const CreateTenantdefault = Error\nexport type DeleteTenant200 = Tenant\nexport const DeleteTenant200 = Tenant\nexport type DeleteTenantdefault = Error\nexport const DeleteTenantdefault = Error\nexport type UpdateTenantRequestJson = TenantInput\nexport const UpdateTenantRequestJson = TenantInput\nexport type UpdateTenant200 = Tenant\nexport const UpdateTenant200 = Tenant\nexport type UpdateTenantdefault = Error\nexport const UpdateTenantdefault = Error\nexport type RestoreTenant200 = Tenant\nexport const RestoreTenant200 = Tenant\nexport type RestoreTenantdefault = Error\nexport const RestoreTenantdefault = Error\nexport type ListUsersParams = { readonly \"limit\"?: number, readonly \"cursor\"?: string, readonly \"query\"?: string, readonly \"disabled\"?: \"active\" | \"disabled\" | \"all\" }\nexport const ListUsersParams = Schema.Struct({ \"limit\": Schema.optionalKey(Schema.Number.annotate({ \"default\": 50 }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"cursor\": Schema.optionalKey(Schema.String), \"query\": Schema.optionalKey(Schema.String), \"disabled\": Schema.optionalKey(Schema.Literals([\"active\", \"disabled\", \"all\"]).annotate({ \"default\": \"active\" })) })\nexport type ListUsers200 = UserPage\nexport const ListUsers200 = UserPage\nexport type ListUsersdefault = Error\nexport const ListUsersdefault = Error\nexport type CreateUserRequestJson = UserInput\nexport const CreateUserRequestJson = UserInput\nexport type CreateUser201 = User\nexport const CreateUser201 = User\nexport type CreateUserdefault = Error\nexport const CreateUserdefault = Error\nexport type GetUser200 = User\nexport const GetUser200 = User\nexport type GetUserdefault = Error\nexport const GetUserdefault = Error\nexport type DisableUser200 = User\nexport const DisableUser200 = User\nexport type DisableUserdefault = Error\nexport const DisableUserdefault = Error\nexport type UpdateUserRequestJson = UserInput\nexport const UpdateUserRequestJson = UserInput\nexport type UpdateUser200 = User\nexport const UpdateUser200 = User\nexport type UpdateUserdefault = Error\nexport const UpdateUserdefault = Error\nexport type RestoreUser200 = User\nexport const RestoreUser200 = User\nexport type RestoreUserdefault = Error\nexport const RestoreUserdefault = Error\nexport type CreateUserInvitation201 = UserInvitation\nexport const CreateUserInvitation201 = UserInvitation\nexport type CreateUserInvitationdefault = Error\nexport const CreateUserInvitationdefault = Error\nexport type ListUserMemberships200 = ReadonlyArray<TenantMembership>\nexport const ListUserMemberships200 = Schema.Array(TenantMembership)\nexport type ListUserMembershipsdefault = Error\nexport const ListUserMembershipsdefault = Error\nexport type ListTenantMemberships200 = ReadonlyArray<TenantMembership>\nexport const ListTenantMemberships200 = Schema.Array(TenantMembership)\nexport type ListTenantMembershipsdefault = Error\nexport const ListTenantMembershipsdefault = Error\nexport type UpsertTenantMembershipRequestJson = TenantMembershipInput\nexport const UpsertTenantMembershipRequestJson = TenantMembershipInput\nexport type UpsertTenantMembership200 = TenantMembership\nexport const UpsertTenantMembership200 = TenantMembership\nexport type UpsertTenantMembershipdefault = Error\nexport const UpsertTenantMembershipdefault = Error\nexport type DeleteTenantMembershipdefault = Error\nexport const DeleteTenantMembershipdefault = Error\nexport type ListAuditEventsParams = { readonly \"limit\"?: number, readonly \"cursor\"?: string, readonly \"tenantId\"?: UUIDv7, readonly \"actorType\"?: PrincipalType, readonly \"actorId\"?: string, readonly \"action\"?: string, readonly \"resourceType\"?: string, readonly \"resourceId\"?: string }\nexport const ListAuditEventsParams = Schema.Struct({ \"limit\": Schema.optionalKey(Schema.Number.annotate({ \"default\": 50 }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"cursor\": Schema.optionalKey(Schema.String), \"tenantId\": Schema.optionalKey(UUIDv7), \"actorType\": Schema.optionalKey(PrincipalType), \"actorId\": Schema.optionalKey(Schema.String), \"action\": Schema.optionalKey(Schema.String), \"resourceType\": Schema.optionalKey(Schema.String), \"resourceId\": Schema.optionalKey(Schema.String) })\nexport type ListAuditEvents200 = AuditEventPage\nexport const ListAuditEvents200 = AuditEventPage\nexport type ListAuditEventsdefault = Error\nexport const ListAuditEventsdefault = Error\nexport type ListAdminTokensParams = { readonly \"limit\"?: number, readonly \"cursor\"?: string, readonly \"authorityType\"?: AuthorityType, readonly \"tenantId\"?: UUIDv7, readonly \"name\"?: string, readonly \"scope\"?: Scope, readonly \"revoked\"?: \"active\" | \"revoked\" | \"all\" }\nexport const ListAdminTokensParams = Schema.Struct({ \"limit\": Schema.optionalKey(Schema.Number.annotate({ \"default\": 50 }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"cursor\": Schema.optionalKey(Schema.String), \"authorityType\": Schema.optionalKey(AuthorityType), \"tenantId\": Schema.optionalKey(UUIDv7), \"name\": Schema.optionalKey(Schema.String), \"scope\": Schema.optionalKey(Scope), \"revoked\": Schema.optionalKey(Schema.Literals([\"active\", \"revoked\", \"all\"]).annotate({ \"default\": \"all\" })) })\nexport type ListAdminTokens200 = TokenPage\nexport const ListAdminTokens200 = TokenPage\nexport type ListAdminTokensdefault = Error\nexport const ListAdminTokensdefault = Error\nexport type CreateAdminTokenRequestJson = CreateAdminTokenInput\nexport const CreateAdminTokenRequestJson = CreateAdminTokenInput\nexport type CreateAdminToken201 = CreateTokenResponse\nexport const CreateAdminToken201 = CreateTokenResponse\nexport type CreateAdminTokendefault = Error\nexport const CreateAdminTokendefault = Error\nexport type RevokeAdminTokendefault = Error\nexport const RevokeAdminTokendefault = Error\nexport type GetTenant200 = Tenant\nexport const GetTenant200 = Tenant\nexport type GetTenantdefault = Error\nexport const GetTenantdefault = Error\nexport type UpdateSelectedTenantRequestJson = TenantInput\nexport const UpdateSelectedTenantRequestJson = TenantInput\nexport type UpdateSelectedTenant200 = Tenant\nexport const UpdateSelectedTenant200 = Tenant\nexport type UpdateSelectedTenantdefault = Error\nexport const UpdateSelectedTenantdefault = Error\nexport type ListTenantTokensParams = { readonly \"limit\"?: number, readonly \"cursor\"?: string, readonly \"name\"?: string, readonly \"scope\"?: Scope, readonly \"revoked\"?: \"active\" | \"revoked\" | \"all\" }\nexport const ListTenantTokensParams = Schema.Struct({ \"limit\": Schema.optionalKey(Schema.Number.annotate({ \"default\": 50 }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"cursor\": Schema.optionalKey(Schema.String), \"name\": Schema.optionalKey(Schema.String), \"scope\": Schema.optionalKey(Scope), \"revoked\": Schema.optionalKey(Schema.Literals([\"active\", \"revoked\", \"all\"]).annotate({ \"default\": \"all\" })) })\nexport type ListTenantTokens200 = TokenPage\nexport const ListTenantTokens200 = TokenPage\nexport type ListTenantTokensdefault = Error\nexport const ListTenantTokensdefault = Error\nexport type CreateTenantTokenRequestJson = CreateTenantTokenInput\nexport const CreateTenantTokenRequestJson = CreateTenantTokenInput\nexport type CreateTenantToken201 = CreateTokenResponse\nexport const CreateTenantToken201 = CreateTokenResponse\nexport type CreateTenantTokendefault = Error\nexport const CreateTenantTokendefault = Error\nexport type RevokeTenantTokendefault = Error\nexport const RevokeTenantTokendefault = Error\nexport type ListSessionsParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7, readonly \"limit\"?: number, readonly \"cursor\"?: string, readonly \"includeDeleted\"?: boolean, readonly \"status\"?: SessionStatus, readonly \"tagKey\"?: ReadonlyArray<string>, readonly \"tagValue\"?: ReadonlyArray<string>, readonly \"tagOperator\"?: ReadonlyArray<\"eq\" | \"neq\" | \"in\" | \"not_in\"> }\nexport const ListSessionsParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7), \"limit\": Schema.optionalKey(Schema.Number.annotate({ \"default\": 50 }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"cursor\": Schema.optionalKey(Schema.String), \"includeDeleted\": Schema.optionalKey(Schema.Boolean.annotate({ \"default\": false })), \"status\": Schema.optionalKey(SessionStatus), \"tagKey\": Schema.optionalKey(Schema.Array(Schema.String.check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })))), \"tagValue\": Schema.optionalKey(Schema.Array(Schema.String.check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })))), \"tagOperator\": Schema.optionalKey(Schema.Array(Schema.Literals([\"eq\", \"neq\", \"in\", \"not_in\"]))) })\nexport type ListSessions200 = SessionPage\nexport const ListSessions200 = SessionPage\nexport type ListSessionsdefault = Error\nexport const ListSessionsdefault = Error\nexport type CreateSessionParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7, readonly \"waitForReady\"?: boolean }\nexport const CreateSessionParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7), \"waitForReady\": Schema.optionalKey(Schema.Boolean.annotate({ \"default\": true })) })\nexport type CreateSessionRequestJson = CreateSessionInput\nexport const CreateSessionRequestJson = CreateSessionInput\nexport type CreateSession201 = CreateSessionResult\nexport const CreateSession201 = CreateSessionResult\nexport type CreateSessiondefault = Error\nexport const CreateSessiondefault = Error\nexport type GetSessionsBulkParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const GetSessionsBulkParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type GetSessionsBulkRequestJson = SessionBulkInput\nexport const GetSessionsBulkRequestJson = SessionBulkInput\nexport type GetSessionsBulk200 = SessionBulkResponse\nexport const GetSessionsBulk200 = SessionBulkResponse\nexport type GetSessionsBulkdefault = Error\nexport const GetSessionsBulkdefault = Error\nexport type GetSessionParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const GetSessionParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type GetSession200 = Session\nexport const GetSession200 = Session\nexport type GetSessiondefault = Error\nexport const GetSessiondefault = Error\nexport type DeleteSessionParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const DeleteSessionParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type DeleteSession200 = SessionMutation\nexport const DeleteSession200 = SessionMutation\nexport type DeleteSessiondefault = Error\nexport const DeleteSessiondefault = Error\nexport type ReplaceSessionTagsParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const ReplaceSessionTagsParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type ReplaceSessionTagsRequestJson = ReplaceTagsInput\nexport const ReplaceSessionTagsRequestJson = ReplaceTagsInput\nexport type ReplaceSessionTags200 = SessionMutation\nexport const ReplaceSessionTags200 = SessionMutation\nexport type ReplaceSessionTagsdefault = Error\nexport const ReplaceSessionTagsdefault = Error\nexport type UpdateSessionProxyParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const UpdateSessionProxyParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type UpdateSessionProxyRequestJson = UpdateProxyAssignment\nexport const UpdateSessionProxyRequestJson = UpdateProxyAssignment\nexport type UpdateSessionProxy200 = SessionMutation\nexport const UpdateSessionProxy200 = SessionMutation\nexport type UpdateSessionProxydefault = Error\nexport const UpdateSessionProxydefault = Error\nexport type SuspendSessionParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const SuspendSessionParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type SuspendSession200 = SessionMutation\nexport const SuspendSession200 = SessionMutation\nexport type SuspendSessiondefault = Error\nexport const SuspendSessiondefault = Error\nexport type ReopenSessionParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const ReopenSessionParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type ReopenSession200 = SessionMutation\nexport const ReopenSession200 = SessionMutation\nexport type ReopenSessiondefault = Error\nexport const ReopenSessiondefault = Error\nexport type RotateSessionTokenParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const RotateSessionTokenParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type RotateSessionToken200 = SessionMutation\nexport const RotateSessionToken200 = SessionMutation\nexport type RotateSessionTokendefault = Error\nexport const RotateSessionTokendefault = Error\nexport type RotateCollaborationCapabilityParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const RotateCollaborationCapabilityParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type RotateCollaborationCapability200 = SessionMutation\nexport const RotateCollaborationCapability200 = SessionMutation\nexport type RotateCollaborationCapabilitydefault = Error\nexport const RotateCollaborationCapabilitydefault = Error\nexport type GetSessionCursorParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const GetSessionCursorParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type GetSessionCursor200 = CursorVisibility\nexport const GetSessionCursor200 = CursorVisibility\nexport type GetSessionCursordefault = Error\nexport const GetSessionCursordefault = Error\nexport type SetSessionCursorParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const SetSessionCursorParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type SetSessionCursorRequestJson = CursorVisibility\nexport const SetSessionCursorRequestJson = CursorVisibility\nexport type SetSessionCursor200 = CursorVisibility\nexport const SetSessionCursor200 = CursorVisibility\nexport type SetSessionCursordefault = Error\nexport const SetSessionCursordefault = Error\nexport type ListSessionRecordingsParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const ListSessionRecordingsParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type ListSessionRecordings200 = ReadonlyArray<Recording>\nexport const ListSessionRecordings200 = Schema.Array(Recording)\nexport type ListSessionRecordingsdefault = Error\nexport const ListSessionRecordingsdefault = Error\nexport type CreateSessionRecordingParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const CreateSessionRecordingParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type CreateSessionRecordingRequestJson = CreateSessionRecordingInput\nexport const CreateSessionRecordingRequestJson = CreateSessionRecordingInput\nexport type CreateSessionRecording201 = Recording\nexport const CreateSessionRecording201 = Recording\nexport type CreateSessionRecordingdefault = Error\nexport const CreateSessionRecordingdefault = Error\nexport type GetSessionRecordingParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const GetSessionRecordingParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type GetSessionRecording200 = Recording\nexport const GetSessionRecording200 = Recording\nexport type GetSessionRecordingdefault = Error\nexport const GetSessionRecordingdefault = Error\nexport type RetargetSessionRecordingParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const RetargetSessionRecordingParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type RetargetSessionRecordingRequestJson = RetargetSessionRecordingInput\nexport const RetargetSessionRecordingRequestJson = RetargetSessionRecordingInput\nexport type RetargetSessionRecording200 = Recording\nexport const RetargetSessionRecording200 = Recording\nexport type RetargetSessionRecordingdefault = Error\nexport const RetargetSessionRecordingdefault = Error\nexport type StopSessionRecordingParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const StopSessionRecordingParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type StopSessionRecording200 = SessionFile\nexport const StopSessionRecording200 = SessionFile\nexport type StopSessionRecordingdefault = Error\nexport const StopSessionRecordingdefault = Error\nexport type CreateSessionFileDownloadURLParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const CreateSessionFileDownloadURLParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type CreateSessionFileDownloadURLRequestJson = SessionFileDownloadURLInput\nexport const CreateSessionFileDownloadURLRequestJson = SessionFileDownloadURLInput\nexport type CreateSessionFileDownloadURL200 = SessionFileDownloadURL\nexport const CreateSessionFileDownloadURL200 = SessionFileDownloadURL\nexport type CreateSessionFileDownloadURLdefault = Error\nexport const CreateSessionFileDownloadURLdefault = Error\nexport type PromoteSessionParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const PromoteSessionParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type PromoteSessionRequestJson = PromoteSessionInput\nexport const PromoteSessionRequestJson = PromoteSessionInput\nexport type PromoteSession200 = SnapshotMutation\nexport const PromoteSession200 = SnapshotMutation\nexport type PromoteSessiondefault = Error\nexport const PromoteSessiondefault = Error\nexport type ListSnapshotsParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7, readonly \"limit\"?: number, readonly \"cursor\"?: string, readonly \"name\"?: string, readonly \"deleted\"?: \"active\" | \"deleted\" | \"all\", readonly \"includeDeleted\"?: boolean, readonly \"tagKey\"?: ReadonlyArray<string>, readonly \"tagValue\"?: ReadonlyArray<string>, readonly \"tagOperator\"?: ReadonlyArray<\"eq\" | \"neq\" | \"in\" | \"not_in\"> }\nexport const ListSnapshotsParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7), \"limit\": Schema.optionalKey(Schema.Number.annotate({ \"default\": 50 }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"cursor\": Schema.optionalKey(Schema.String), \"name\": Schema.optionalKey(Schema.String), \"deleted\": Schema.optionalKey(Schema.Literals([\"active\", \"deleted\", \"all\"]).annotate({ \"default\": \"active\" })), \"includeDeleted\": Schema.optionalKey(Schema.Boolean.annotate({ \"default\": false })), \"tagKey\": Schema.optionalKey(Schema.Array(Schema.String.check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })))), \"tagValue\": Schema.optionalKey(Schema.Array(Schema.String.check(Schema.isMinLength(1).annotate({ \"expected\": \"a value with a length of at least 1\" })))), \"tagOperator\": Schema.optionalKey(Schema.Array(Schema.Literals([\"eq\", \"neq\", \"in\", \"not_in\"]))) })\nexport type ListSnapshots200 = SnapshotPage\nexport const ListSnapshots200 = SnapshotPage\nexport type ListSnapshotsdefault = Error\nexport const ListSnapshotsdefault = Error\nexport type DeleteSnapshotParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const DeleteSnapshotParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type DeleteSnapshot200 = SnapshotMutation\nexport const DeleteSnapshot200 = SnapshotMutation\nexport type DeleteSnapshotdefault = Error\nexport const DeleteSnapshotdefault = Error\nexport type UpdateSnapshotParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const UpdateSnapshotParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type UpdateSnapshotRequestJson = UpdateSnapshotInput\nexport const UpdateSnapshotRequestJson = UpdateSnapshotInput\nexport type UpdateSnapshot200 = SnapshotMutation\nexport const UpdateSnapshot200 = SnapshotMutation\nexport type UpdateSnapshotdefault = Error\nexport const UpdateSnapshotdefault = Error\nexport type ReplaceSnapshotTagsParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const ReplaceSnapshotTagsParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type ReplaceSnapshotTagsRequestJson = ReplaceTagsInput\nexport const ReplaceSnapshotTagsRequestJson = ReplaceTagsInput\nexport type ReplaceSnapshotTags200 = SnapshotMutation\nexport const ReplaceSnapshotTags200 = SnapshotMutation\nexport type ReplaceSnapshotTagsdefault = Error\nexport const ReplaceSnapshotTagsdefault = Error\nexport type RestoreSnapshotParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7 }\nexport const RestoreSnapshotParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7) })\nexport type RestoreSnapshot200 = SnapshotMutation\nexport const RestoreSnapshot200 = SnapshotMutation\nexport type RestoreSnapshotdefault = Error\nexport const RestoreSnapshotdefault = Error\nexport type ListEventsParams = { readonly \"X-Aperture-Tenant-Id\"?: UUIDv7, readonly \"limit\"?: number, readonly \"cursor\"?: string, readonly \"resourceType\"?: string, readonly \"resourceId\"?: string }\nexport const ListEventsParams = Schema.Struct({ \"X-Aperture-Tenant-Id\": Schema.optionalKey(UUIDv7), \"limit\": Schema.optionalKey(Schema.Number.annotate({ \"default\": 50 }).check(Schema.isInt().annotate({ \"expected\": \"an integer\" })).check(Schema.isGreaterThanOrEqualTo(0).annotate({ \"expected\": \"a value greater than or equal to 0\" }))), \"cursor\": Schema.optionalKey(Schema.String), \"resourceType\": Schema.optionalKey(Schema.String), \"resourceId\": Schema.optionalKey(Schema.String) })\nexport type ListEvents200 = EventPage\nexport const ListEvents200 = EventPage\nexport type ListEventsdefault = Error\nexport const ListEventsdefault = Error\n\nexport interface OperationConfig {\n /**\n * Whether or not the response should be included in the value returned from\n * an operation.\n *\n * If set to `true`, a tuple of `[A, HttpClientResponse]` will be returned,\n * where `A` is the success type of the operation.\n *\n * If set to `false`, only the success type of the operation will be returned.\n */\n readonly includeResponse?: boolean | undefined\n}\n\n/**\n * A utility type which optionally includes the response in the return result\n * of an operation based upon the value of the `includeResponse` configuration\n * option.\n */\nexport type WithOptionalResponse<A, Config extends OperationConfig> = Config extends {\n readonly includeResponse: true\n} ? [A, HttpClientResponse.HttpClientResponse] : A\n\nexport const make = (\n httpClient: HttpClient.HttpClient,\n options: {\n readonly transformClient?: ((client: HttpClient.HttpClient) => Effect.Effect<HttpClient.HttpClient>) | undefined\n } = {}\n): ApertureApi => {\n const unexpectedStatus = (response: HttpClientResponse.HttpClientResponse) =>\n Effect.flatMap(\n Effect.orElseSucceed(response.json, () => \"Unexpected status code\"),\n (description) =>\n Effect.fail(\n new HttpClientError.HttpClientError({\n reason: new HttpClientError.StatusCodeError({\n request: response.request,\n response,\n description: typeof description === \"string\" ? description : JSON.stringify(description),\n }),\n }),\n ),\n )\n const withResponse = <Config extends OperationConfig>(config: Config | undefined) => (\n f: (response: HttpClientResponse.HttpClientResponse) => Effect.Effect<any, any>,\n ): (request: HttpClientRequest.HttpClientRequest) => Effect.Effect<any, any> => {\n const withOptionalResponse = (\n config?.includeResponse\n ? (response: HttpClientResponse.HttpClientResponse) => Effect.map(f(response), (a) => [a, response])\n : (response: HttpClientResponse.HttpClientResponse) => f(response)\n ) as any\n return options?.transformClient\n ? (request) =>\n Effect.flatMap(\n Effect.flatMap(options.transformClient!(httpClient), (client) => client.execute(request)),\n withOptionalResponse\n )\n : (request) => Effect.flatMap(httpClient.execute(request), withOptionalResponse)\n }\n const __encodePathParam = encodeURIComponent\n const __makePathRequest = (\n method: (url: string) => HttpClientRequest.HttpClientRequest,\n parameters: ReadonlyArray<string>,\n getPath: () => string,\n ) => Effect.suspend(() => {\n const fail = (description: string, cause?: unknown) => Effect.fail(\n new HttpClientError.HttpClientError({\n reason: new HttpClientError.InvalidUrlError({\n request: method(\"\"),\n cause,\n description,\n }),\n }),\n )\n if (parameters.some((value) => value === \"\" || /^(?:\\.|%2e){1,2}$/i.test(value))) {\n return fail(\"Path parameters must be non-empty and cannot be dot segments\")\n }\n let path: string\n try {\n path = getPath()\n } catch (cause) {\n return fail(\"Failed to encode path parameter\", cause)\n }\n if (path.split(\"/\").some((segment) => /^(?:\\.|%2e){1,2}$/i.test(segment))) {\n return fail(\"Request paths cannot contain dot segments\")\n }\n return Effect.succeed(method(path))\n })\n const decodeSuccess =\n <Schema extends Schema.Constraint>(schema: Schema) =>\n (response: HttpClientResponse.HttpClientResponse) =>\n HttpClientResponse.schemaBodyJson(schema)(response)\n const decodeError =\n <const Tag extends string, Schema extends Schema.Constraint>(tag: Tag, schema: Schema) =>\n (response: HttpClientResponse.HttpClientResponse) =>\n Effect.flatMap(\n HttpClientResponse.schemaBodyJson(schema)(response),\n (cause) => Effect.fail(ApertureApiError(tag, cause, response)),\n )\n return {\n httpClient,\n \"getHealth\": (options) => HttpClientRequest.get(\"/api/health\").pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(GetHealth200),\n orElse: unexpectedStatus\n }))\n ),\n \"getCurrentPrincipal\": (options) => HttpClientRequest.get(\"/api/auth/me\").pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(GetCurrentPrincipal200),\n orElse: unexpectedStatus\n }))\n ),\n \"listBrowserChannels\": (options) => HttpClientRequest.get(\"/api/browser/channels\").pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListBrowserChannels200),\n orElse: unexpectedStatus\n }))\n ),\n \"listTenants\": (options) => HttpClientRequest.get(\"/api/admin/tenants\").pipe(\n HttpClientRequest.setUrlParams({ \"limit\": options?.params?.[\"limit\"] as any, \"cursor\": options?.params?.[\"cursor\"] as any, \"deleted\": options?.params?.[\"deleted\"] as any, \"includeDeleted\": options?.params?.[\"includeDeleted\"] as any }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListTenants200),\n orElse: unexpectedStatus\n }))\n ),\n \"createTenant\": (options) => HttpClientRequest.post(\"/api/admin/tenants\").pipe(\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(CreateTenant201),\n orElse: unexpectedStatus\n }))\n ),\n \"deleteTenant\": (tenantId, options) => __makePathRequest(HttpClientRequest.delete, [tenantId], () => \"/api/admin/tenants/\" + __encodePathParam(tenantId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(DeleteTenant200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"updateTenant\": (tenantId, options) => __makePathRequest(HttpClientRequest.patch, [tenantId], () => \"/api/admin/tenants/\" + __encodePathParam(tenantId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(UpdateTenant200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"restoreTenant\": (tenantId, options) => __makePathRequest(HttpClientRequest.post, [tenantId], () => \"/api/admin/tenants/\" + __encodePathParam(tenantId) + \"/restore\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(RestoreTenant200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"listUsers\": (options) => HttpClientRequest.get(\"/api/admin/users\").pipe(\n HttpClientRequest.setUrlParams({ \"limit\": options?.params?.[\"limit\"] as any, \"cursor\": options?.params?.[\"cursor\"] as any, \"query\": options?.params?.[\"query\"] as any, \"disabled\": options?.params?.[\"disabled\"] as any }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListUsers200),\n orElse: unexpectedStatus\n }))\n ),\n \"createUser\": (options) => HttpClientRequest.post(\"/api/admin/users\").pipe(\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(CreateUser201),\n orElse: unexpectedStatus\n }))\n ),\n \"getUser\": (userId, options) => __makePathRequest(HttpClientRequest.get, [userId], () => \"/api/admin/users/\" + __encodePathParam(userId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(GetUser200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"disableUser\": (userId, options) => __makePathRequest(HttpClientRequest.delete, [userId], () => \"/api/admin/users/\" + __encodePathParam(userId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(DisableUser200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"updateUser\": (userId, options) => __makePathRequest(HttpClientRequest.patch, [userId], () => \"/api/admin/users/\" + __encodePathParam(userId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(UpdateUser200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"restoreUser\": (userId, options) => __makePathRequest(HttpClientRequest.post, [userId], () => \"/api/admin/users/\" + __encodePathParam(userId) + \"/restore\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(RestoreUser200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"createUserInvitation\": (userId, options) => __makePathRequest(HttpClientRequest.post, [userId], () => \"/api/admin/users/\" + __encodePathParam(userId) + \"/invitation\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(CreateUserInvitation201),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"listUserMemberships\": (userId, options) => __makePathRequest(HttpClientRequest.get, [userId], () => \"/api/admin/users/\" + __encodePathParam(userId) + \"/memberships\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListUserMemberships200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"listTenantMemberships\": (tenantId, options) => __makePathRequest(HttpClientRequest.get, [tenantId], () => \"/api/admin/tenants/\" + __encodePathParam(tenantId) + \"/memberships\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListTenantMemberships200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"upsertTenantMembership\": (tenantId, userId, options) => __makePathRequest(HttpClientRequest.put, [tenantId, userId], () => \"/api/admin/tenants/\" + __encodePathParam(tenantId) + \"/memberships/\" + __encodePathParam(userId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(UpsertTenantMembership200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"deleteTenantMembership\": (tenantId, userId, options) => __makePathRequest(HttpClientRequest.delete, [tenantId, userId], () => \"/api/admin/tenants/\" + __encodePathParam(tenantId) + \"/memberships/\" + __encodePathParam(userId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(DeleteTenantMembershipdefault),\n \"204\": () => Effect.void,\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"listAuditEvents\": (options) => HttpClientRequest.get(\"/api/admin/audit-events\").pipe(\n HttpClientRequest.setUrlParams({ \"limit\": options?.params?.[\"limit\"] as any, \"cursor\": options?.params?.[\"cursor\"] as any, \"tenantId\": options?.params?.[\"tenantId\"] as any, \"actorType\": options?.params?.[\"actorType\"] as any, \"actorId\": options?.params?.[\"actorId\"] as any, \"action\": options?.params?.[\"action\"] as any, \"resourceType\": options?.params?.[\"resourceType\"] as any, \"resourceId\": options?.params?.[\"resourceId\"] as any }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListAuditEvents200),\n orElse: unexpectedStatus\n }))\n ),\n \"listAdminTokens\": (options) => HttpClientRequest.get(\"/api/admin/tokens\").pipe(\n HttpClientRequest.setUrlParams({ \"limit\": options?.params?.[\"limit\"] as any, \"cursor\": options?.params?.[\"cursor\"] as any, \"authorityType\": options?.params?.[\"authorityType\"] as any, \"tenantId\": options?.params?.[\"tenantId\"] as any, \"name\": options?.params?.[\"name\"] as any, \"scope\": options?.params?.[\"scope\"] as any, \"revoked\": options?.params?.[\"revoked\"] as any }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListAdminTokens200),\n orElse: unexpectedStatus\n }))\n ),\n \"createAdminToken\": (options) => HttpClientRequest.post(\"/api/admin/tokens\").pipe(\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(CreateAdminToken201),\n orElse: unexpectedStatus\n }))\n ),\n \"revokeAdminToken\": (tokenId, options) => __makePathRequest(HttpClientRequest.post, [tokenId], () => \"/api/admin/tokens/\" + __encodePathParam(tokenId) + \"/revoke\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(RevokeAdminTokendefault),\n \"204\": () => Effect.void,\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"getTenant\": (options) => HttpClientRequest.get(\"/api/tenant\").pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(GetTenant200),\n orElse: unexpectedStatus\n }))\n ),\n \"updateSelectedTenant\": (options) => HttpClientRequest.patch(\"/api/tenant\").pipe(\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(UpdateSelectedTenant200),\n orElse: unexpectedStatus\n }))\n ),\n \"listTenantTokens\": (options) => HttpClientRequest.get(\"/api/tenant/tokens\").pipe(\n HttpClientRequest.setUrlParams({ \"limit\": options?.params?.[\"limit\"] as any, \"cursor\": options?.params?.[\"cursor\"] as any, \"name\": options?.params?.[\"name\"] as any, \"scope\": options?.params?.[\"scope\"] as any, \"revoked\": options?.params?.[\"revoked\"] as any }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListTenantTokens200),\n orElse: unexpectedStatus\n }))\n ),\n \"createTenantToken\": (options) => HttpClientRequest.post(\"/api/tenant/tokens\").pipe(\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(CreateTenantToken201),\n orElse: unexpectedStatus\n }))\n ),\n \"revokeTenantToken\": (tokenId, options) => __makePathRequest(HttpClientRequest.post, [tokenId], () => \"/api/tenant/tokens/\" + __encodePathParam(tokenId) + \"/revoke\").pipe(\n Effect.flatMap((request) => request.pipe(\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(RevokeTenantTokendefault),\n \"204\": () => Effect.void,\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"listSessions\": (options) => HttpClientRequest.get(\"/api/sessions\").pipe(\n HttpClientRequest.setUrlParams({ \"limit\": options?.params?.[\"limit\"] as any, \"cursor\": options?.params?.[\"cursor\"] as any, \"includeDeleted\": options?.params?.[\"includeDeleted\"] as any, \"status\": options?.params?.[\"status\"] as any, \"tagKey\": options?.params?.[\"tagKey\"] as any, \"tagValue\": options?.params?.[\"tagValue\"] as any, \"tagOperator\": options?.params?.[\"tagOperator\"] as any }),\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListSessions200),\n orElse: unexpectedStatus\n }))\n ),\n \"createSession\": (options) => HttpClientRequest.post(\"/api/sessions\").pipe(\n HttpClientRequest.setUrlParams({ \"waitForReady\": options.params?.[\"waitForReady\"] as any }),\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(CreateSession201),\n orElse: unexpectedStatus\n }))\n ),\n \"getSessionsBulk\": (options) => HttpClientRequest.post(\"/api/sessions/bulk\").pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(GetSessionsBulk200),\n orElse: unexpectedStatus\n }))\n ),\n \"getSession\": (sessionId, options) => __makePathRequest(HttpClientRequest.get, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(GetSession200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"deleteSession\": (sessionId, options) => __makePathRequest(HttpClientRequest.delete, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(DeleteSession200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"replaceSessionTags\": (sessionId, options) => __makePathRequest(HttpClientRequest.put, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/tags\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ReplaceSessionTags200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"updateSessionProxy\": (sessionId, options) => __makePathRequest(HttpClientRequest.put, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/proxy\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(UpdateSessionProxy200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"suspendSession\": (sessionId, options) => __makePathRequest(HttpClientRequest.post, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/suspend\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(SuspendSession200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"reopenSession\": (sessionId, options) => __makePathRequest(HttpClientRequest.post, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/reopen\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ReopenSession200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"rotateSessionToken\": (sessionId, options) => __makePathRequest(HttpClientRequest.post, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/session-token/rotate\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(RotateSessionToken200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"rotateCollaborationCapability\": (sessionId, role, options) => __makePathRequest(HttpClientRequest.post, [sessionId, role], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/collaboration-capabilities/\" + __encodePathParam(role) + \"/rotate\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(RotateCollaborationCapability200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"getSessionCursor\": (sessionId, options) => __makePathRequest(HttpClientRequest.get, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/cursor\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(GetSessionCursor200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"setSessionCursor\": (sessionId, options) => __makePathRequest(HttpClientRequest.put, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/cursor\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(SetSessionCursor200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"listSessionRecordings\": (sessionId, options) => __makePathRequest(HttpClientRequest.get, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/recordings\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListSessionRecordings200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"createSessionRecording\": (sessionId, options) => __makePathRequest(HttpClientRequest.post, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/recordings\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(CreateSessionRecording201),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"getSessionRecording\": (sessionId, recordingId, options) => __makePathRequest(HttpClientRequest.get, [sessionId, recordingId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/recordings/\" + __encodePathParam(recordingId) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(GetSessionRecording200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"retargetSessionRecording\": (sessionId, recordingId, options) => __makePathRequest(HttpClientRequest.post, [sessionId, recordingId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/recordings/\" + __encodePathParam(recordingId) + \"/retarget\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(RetargetSessionRecording200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"stopSessionRecording\": (sessionId, recordingId, options) => __makePathRequest(HttpClientRequest.post, [sessionId, recordingId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/recordings/\" + __encodePathParam(recordingId) + \"/stop\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(StopSessionRecording200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"createSessionFileDownloadURL\": (sessionId, options) => __makePathRequest(HttpClientRequest.post, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/files/download-url\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(CreateSessionFileDownloadURL200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"promoteSession\": (sessionId, options) => __makePathRequest(HttpClientRequest.post, [sessionId], () => \"/api/sessions/\" + __encodePathParam(sessionId) + \"/promote\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(PromoteSession200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"listSnapshots\": (options) => HttpClientRequest.get(\"/api/snapshots\").pipe(\n HttpClientRequest.setUrlParams({ \"limit\": options?.params?.[\"limit\"] as any, \"cursor\": options?.params?.[\"cursor\"] as any, \"name\": options?.params?.[\"name\"] as any, \"deleted\": options?.params?.[\"deleted\"] as any, \"includeDeleted\": options?.params?.[\"includeDeleted\"] as any, \"tagKey\": options?.params?.[\"tagKey\"] as any, \"tagValue\": options?.params?.[\"tagValue\"] as any, \"tagOperator\": options?.params?.[\"tagOperator\"] as any }),\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListSnapshots200),\n orElse: unexpectedStatus\n }))\n ),\n \"deleteSnapshot\": (name, options) => __makePathRequest(HttpClientRequest.delete, [name], () => \"/api/snapshots/\" + __encodePathParam(name) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(DeleteSnapshot200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"updateSnapshot\": (name, options) => __makePathRequest(HttpClientRequest.patch, [name], () => \"/api/snapshots/\" + __encodePathParam(name) + \"\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(UpdateSnapshot200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"replaceSnapshotTags\": (name, options) => __makePathRequest(HttpClientRequest.put, [name], () => \"/api/snapshots/\" + __encodePathParam(name) + \"/tags\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n HttpClientRequest.bodyJsonUnsafe(options.payload),\n withResponse(options.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ReplaceSnapshotTags200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"restoreSnapshot\": (name, options) => __makePathRequest(HttpClientRequest.post, [name], () => \"/api/snapshots/\" + __encodePathParam(name) + \"/restore\").pipe(\n Effect.flatMap((request) => request.pipe(\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(RestoreSnapshot200),\n orElse: unexpectedStatus\n }))\n ))\n ),\n \"listEvents\": (options) => HttpClientRequest.get(\"/api/events\").pipe(\n HttpClientRequest.setUrlParams({ \"limit\": options?.params?.[\"limit\"] as any, \"cursor\": options?.params?.[\"cursor\"] as any, \"resourceType\": options?.params?.[\"resourceType\"] as any, \"resourceId\": options?.params?.[\"resourceId\"] as any }),\n HttpClientRequest.setHeaders({ \"X-Aperture-Tenant-Id\": options?.params?.[\"X-Aperture-Tenant-Id\"] ?? undefined }),\n withResponse(options?.config)(HttpClientResponse.matchStatus({\n \"2xx\": decodeSuccess(ListEvents200),\n orElse: unexpectedStatus\n }))\n )\n }\n}\n\nexport interface ApertureApi {\n readonly httpClient: HttpClient.HttpClient\n /**\n* Local process health and blue-green deployment state, including inactive colors.\n*/\nreadonly \"getHealth\": <Config extends OperationConfig>(options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof GetHealth200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Token metadata and effective tenant selection. A system administrator without an explicit selection receives the first active tenant.\n*/\nreadonly \"getCurrentPrincipal\": <Config extends OperationConfig>(options: { readonly params?: typeof GetCurrentPrincipalParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof GetCurrentPrincipal200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Browser channels accepted by session creation.\n*/\nreadonly \"listBrowserChannels\": <Config extends OperationConfig>(options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListBrowserChannels200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Newest-first tenant list.\n*/\nreadonly \"listTenants\": <Config extends OperationConfig>(options: { readonly params?: typeof ListTenantsParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListTenants200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Creates a tenant with a generated UUIDv7 identifier.\n*/\nreadonly \"createTenant\": <Config extends OperationConfig>(options: { readonly payload: typeof CreateTenantRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof CreateTenant201.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Deactivates a tenant and revokes its tenant tokens. Idempotent.\n*/\nreadonly \"deleteTenant\": <Config extends OperationConfig>(tenantId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof DeleteTenant200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Replaces the display name of an active tenant.\n*/\nreadonly \"updateTenant\": <Config extends OperationConfig>(tenantId: string, options: { readonly payload: typeof UpdateTenantRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof UpdateTenant200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Restores a tenant. Revoked tokens remain revoked.\n*/\nreadonly \"restoreTenant\": <Config extends OperationConfig>(tenantId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof RestoreTenant200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* List users\n*/\nreadonly \"listUsers\": <Config extends OperationConfig>(options: { readonly params?: typeof ListUsersParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListUsers200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Create a user\n*/\nreadonly \"createUser\": <Config extends OperationConfig>(options: { readonly payload: typeof CreateUserRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof CreateUser201.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Get a user\n*/\nreadonly \"getUser\": <Config extends OperationConfig>(userId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof GetUser200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Disable a user\n*/\nreadonly \"disableUser\": <Config extends OperationConfig>(userId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof DisableUser200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Update a user\n*/\nreadonly \"updateUser\": <Config extends OperationConfig>(userId: string, options: { readonly payload: typeof UpdateUserRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof UpdateUser200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Restore a user\n*/\nreadonly \"restoreUser\": <Config extends OperationConfig>(userId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof RestoreUser200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Creates a setup or reset link for an active user with an email address. Replaces any outstanding password link. The raw token is returned only once and expires after seven days.\n*/\nreadonly \"createUserInvitation\": <Config extends OperationConfig>(userId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof CreateUserInvitation201.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* List a user's tenant memberships\n*/\nreadonly \"listUserMemberships\": <Config extends OperationConfig>(userId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListUserMemberships200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* List tenant memberships\n*/\nreadonly \"listTenantMemberships\": <Config extends OperationConfig>(tenantId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListTenantMemberships200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Create or update a tenant membership\n*/\nreadonly \"upsertTenantMembership\": <Config extends OperationConfig>(tenantId: string, userId: string, options: { readonly payload: typeof UpsertTenantMembershipRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof UpsertTenantMembership200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Delete a tenant membership\n*/\nreadonly \"deleteTenantMembership\": <Config extends OperationConfig>(tenantId: string, userId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof DeleteTenantMembershipdefault.Type | void, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* List security audit events\n*/\nreadonly \"listAuditEvents\": <Config extends OperationConfig>(options: { readonly params?: typeof ListAuditEventsParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListAuditEvents200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Newest-first token metadata. Raw tokens are never included.\n*/\nreadonly \"listAdminTokens\": <Config extends OperationConfig>(options: { readonly params?: typeof ListAdminTokensParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListAdminTokens200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Creates an administrator or tenant token within the caller's authority. Only tenant tokens may use a resource allowlist. A child created by an expiring or resource-restricted API token cannot exceed its parent's expiry, scopes, or resource grants. The raw token is returned once.\n*/\nreadonly \"createAdminToken\": <Config extends OperationConfig>(options: { readonly payload: typeof CreateAdminTokenRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof CreateAdminToken201.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Revokes an API token. Idempotent.\n*/\nreadonly \"revokeAdminToken\": <Config extends OperationConfig>(tokenId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof RevokeAdminTokendefault.Type | void, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Tenant bound to the authenticated tenant token.\n*/\nreadonly \"getTenant\": <Config extends OperationConfig>(options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof GetTenant200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Replaces the bound tenant's display name.\n*/\nreadonly \"updateSelectedTenant\": <Config extends OperationConfig>(options: { readonly payload: typeof UpdateSelectedTenantRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof UpdateSelectedTenant200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Token metadata for the caller's tenant. Raw tokens are never included.\n*/\nreadonly \"listTenantTokens\": <Config extends OperationConfig>(options: { readonly params?: typeof ListTenantTokensParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListTenantTokens200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Creates a token bound to the caller's tenant. Child scopes and resource grants cannot exceed the caller's authority, and a child created by an expiring API token cannot outlive its parent. The raw token is returned once.\n*/\nreadonly \"createTenantToken\": <Config extends OperationConfig>(options: { readonly payload: typeof CreateTenantTokenRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof CreateTenantToken201.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Revokes a tenant-owned token. Missing and foreign IDs both return not found. Idempotent.\n*/\nreadonly \"revokeTenantToken\": <Config extends OperationConfig>(tokenId: string, options: { readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof RevokeTenantTokendefault.Type | void, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Newest-first sessions. A resource-restricted token receives only granted sessions; filtering occurs before pagination. Credentials are included only while available and must be treated as secrets.\n*/\nreadonly \"listSessions\": <Config extends OperationConfig>(options: { readonly params?: typeof ListSessionsParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListSessions200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Starts a browser with a retained overlay, then optionally imports browser storage and replaces the startup page with initial browser targets. Imported storage overlays the base snapshot. Set `waitForReady=false` to receive the session and its credentials in the `creating` state while startup continues. A resource-restricted token may start a blank session or use a granted base snapshot. The new session is not added to its resource allowlist, but the returned session token remains usable. Failed startup may leave a reopenable `failed` session.\n*/\nreadonly \"createSession\": <Config extends OperationConfig>(options: { readonly params?: typeof CreateSessionParams.Encoded | undefined; readonly payload: typeof CreateSessionRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof CreateSession201.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Returns up to 100 sessions in request order. Missing, foreign, deleted, and ungranted sessions are omitted before results are returned.\n*/\nreadonly \"getSessionsBulk\": <Config extends OperationConfig>(options: { readonly params?: typeof GetSessionsBulkParams.Encoded | undefined; readonly payload: typeof GetSessionsBulkRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof GetSessionsBulk200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Session metadata and current credentials when available.\n*/\nreadonly \"getSession\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof GetSessionParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof GetSession200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Stops and marks the session `deleted`. The retained overlay remains reopenable until `expiresAt`.\n*/\nreadonly \"deleteSession\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof DeleteSessionParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof DeleteSession200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Replaces all session tags. Send an empty map to clear them.\n*/\nreadonly \"replaceSessionTags\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof ReplaceSessionTagsParams.Encoded | undefined; readonly payload: typeof ReplaceSessionTagsRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof ReplaceSessionTags200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Replaces the session egress proxy assignment. The change applies to new connections; existing connections finish on the previous assignment unless `drain` resets live tunnel streams. Secrets are write-only — tunnel auth is never returned and upstream proxy passwords come back masked.\n*/\nreadonly \"updateSessionProxy\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof UpdateSessionProxyParams.Encoded | undefined; readonly payload: typeof UpdateSessionProxyRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof UpdateSessionProxy200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Stops a `running` session, retains its overlay, and resets retention.\n*/\nreadonly \"suspendSession\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof SuspendSessionParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof SuspendSession200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Restarts a retained `deleted` or `failed` session and returns fresh credentials.\n*/\nreadonly \"reopenSession\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof ReopenSessionParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ReopenSession200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Replaces the access token of a `running` session and invalidates the old token.\n*/\nreadonly \"rotateSessionToken\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof RotateSessionTokenParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof RotateSessionToken200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Replaces one role-scoped sharing secret without invalidating the other role or owner credentials.\n*/\nreadonly \"rotateCollaborationCapability\": <Config extends OperationConfig>(sessionId: string, role: string, options: { readonly params?: typeof RotateCollaborationCapabilityParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof RotateCollaborationCapability200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Returns whether the remote browser cursor is composited into the live stream and recordings.\n*/\nreadonly \"getSessionCursor\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof GetSessionCursorParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof GetSessionCursor200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Enables or disables compositing the remote browser cursor into the live stream and recordings.\n*/\nreadonly \"setSessionCursor\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof SetSessionCursorParams.Encoded | undefined; readonly payload: typeof SetSessionCursorRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof SetSessionCursor200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Lists logical recordings without exposing host filesystem paths.\n*/\nreadonly \"listSessionRecordings\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof ListSessionRecordingsParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListSessionRecordings200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Starts a tab recording of one ready top-level target.\n*/\nreadonly \"createSessionRecording\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof CreateSessionRecordingParams.Encoded | undefined; readonly payload: typeof CreateSessionRecordingRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof CreateSessionRecording201.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Returns one logical recording and its current top-level target without exposing host filesystem paths.\n*/\nreadonly \"getSessionRecording\": <Config extends OperationConfig>(sessionId: string, recordingId: string, options: { readonly params?: typeof GetSessionRecordingParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof GetSessionRecording200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Moves a running tab recording to another ready top-level target while preserving its recording ID, timeline, and settings. Sending its current target is idempotent. Viewer, stopped, and failed recordings conflict.\n*/\nreadonly \"retargetSessionRecording\": <Config extends OperationConfig>(sessionId: string, recordingId: string, options: { readonly params?: typeof RetargetSessionRecordingParams.Encoded | undefined; readonly payload: typeof RetargetSessionRecordingRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof RetargetSessionRecording200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Stops the selected recording without transferring its media data and returns the resulting session file.\n*/\nreadonly \"stopSessionRecording\": <Config extends OperationConfig>(sessionId: string, recordingId: string, options: { readonly params?: typeof StopSessionRecordingParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof StopSessionRecording200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Creates a signed URL for one retained session file. Anyone with the URL can download the file until it expires.\n*/\nreadonly \"createSessionFileDownloadURL\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof CreateSessionFileDownloadURLParams.Encoded | undefined; readonly payload: typeof CreateSessionFileDownloadURLRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof CreateSessionFileDownloadURL200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Promotes a retained `deleted`, `failed`, or `suspended` session. Deleted snapshot names are reused automatically. `force=true` replaces an active snapshot with the requested name. Reusing or replacing a name requires its grant for resource-restricted tokens; the resulting snapshot is not added to the token's allowlist.\n*/\nreadonly \"promoteSession\": <Config extends OperationConfig>(sessionId: string, options: { readonly params?: typeof PromoteSessionParams.Encoded | undefined; readonly payload: typeof PromoteSessionRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof PromoteSession200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Newest-first snapshots. A resource-restricted token receives only granted snapshots; filtering occurs before pagination. Tag predicates use logical AND.\n*/\nreadonly \"listSnapshots\": <Config extends OperationConfig>(options: { readonly params?: typeof ListSnapshotsParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListSnapshots200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Soft-deletes a snapshot. Existing sessions are unaffected; new sessions cannot use it. Idempotent.\n*/\nreadonly \"deleteSnapshot\": <Config extends OperationConfig>(name: string, options: { readonly params?: typeof DeleteSnapshotParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof DeleteSnapshot200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Replaces or clears a retained snapshot description.\n*/\nreadonly \"updateSnapshot\": <Config extends OperationConfig>(name: string, options: { readonly params?: typeof UpdateSnapshotParams.Encoded | undefined; readonly payload: typeof UpdateSnapshotRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof UpdateSnapshot200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Replaces all tags on a retained snapshot. Send an empty map to clear them.\n*/\nreadonly \"replaceSnapshotTags\": <Config extends OperationConfig>(name: string, options: { readonly params?: typeof ReplaceSnapshotTagsParams.Encoded | undefined; readonly payload: typeof ReplaceSnapshotTagsRequestJson.Encoded; readonly config?: Config | undefined }) => Effect.Effect<WithOptionalResponse<typeof ReplaceSnapshotTags200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Clears snapshot deletion and expiry markers.\n*/\nreadonly \"restoreSnapshot\": <Config extends OperationConfig>(name: string, options: { readonly params?: typeof RestoreSnapshotParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof RestoreSnapshot200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n /**\n* Newest-first tenant events. A resource-restricted token receives only events for granted sessions and snapshots; filtering occurs before pagination. `resourceType` and `resourceId` are exact-match filters.\n*/\nreadonly \"listEvents\": <Config extends OperationConfig>(options: { readonly params?: typeof ListEventsParams.Encoded | undefined; readonly config?: Config | undefined } | undefined) => Effect.Effect<WithOptionalResponse<typeof ListEvents200.Type, Config>, HttpClientError.HttpClientError | SchemaError>\n}\n\nexport interface ApertureApiError<Tag extends string, E> {\n readonly _tag: Tag\n readonly request: HttpClientRequest.HttpClientRequest\n readonly response: HttpClientResponse.HttpClientResponse\n readonly cause: E\n}\n\nclass ApertureApiErrorImpl extends Data.Error<{\n _tag: string\n cause: any\n request: HttpClientRequest.HttpClientRequest\n response: HttpClientResponse.HttpClientResponse\n}> {}\n\nexport const ApertureApiError = <Tag extends string, E>(\n tag: Tag,\n cause: E,\n response: HttpClientResponse.HttpClientResponse,\n): ApertureApiError<Tag, E> =>\n new ApertureApiErrorImpl({\n _tag: tag,\n cause,\n response,\n request: response.request,\n }) as any\n"],"mappings":"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"}
|