@effect-auth/core 0.1.0-alpha.1 → 0.1.0-alpha.10
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/README.md +728 -72
- package/dist/ApiKey.d.ts +207 -0
- package/dist/ApiKey.d.ts.map +1 -0
- package/dist/ApiKey.js +275 -0
- package/dist/ApiKey.js.map +1 -0
- package/dist/AuditLog.d.ts +275 -1
- package/dist/AuditLog.d.ts.map +1 -1
- package/dist/AuditLog.js +213 -1
- package/dist/AuditLog.js.map +1 -1
- package/dist/AuthConfig.d.ts +42 -0
- package/dist/AuthConfig.d.ts.map +1 -0
- package/dist/AuthConfig.js +43 -0
- package/dist/AuthConfig.js.map +1 -0
- package/dist/AuthFlow.d.ts +462 -36
- package/dist/AuthFlow.d.ts.map +1 -1
- package/dist/AuthFlow.js +657 -5
- package/dist/AuthFlow.js.map +1 -1
- package/dist/AuthKernel.d.ts +3 -0
- package/dist/AuthKernel.d.ts.map +1 -0
- package/dist/AuthKernel.js +9 -0
- package/dist/AuthKernel.js.map +1 -0
- package/dist/Challenge.d.ts +24 -4
- package/dist/Challenge.d.ts.map +1 -1
- package/dist/Challenge.js +167 -1
- package/dist/Challenge.js.map +1 -1
- package/dist/Client.d.ts +378 -0
- package/dist/Client.d.ts.map +1 -0
- package/dist/Client.js +768 -0
- package/dist/Client.js.map +1 -0
- package/dist/Crypto.d.ts +6 -1
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +62 -1
- package/dist/Crypto.js.map +1 -1
- package/dist/EffectQbSqliteStorage.d.ts +600 -0
- package/dist/EffectQbSqliteStorage.d.ts.map +1 -0
- package/dist/EffectQbSqliteStorage.js +1637 -0
- package/dist/EffectQbSqliteStorage.js.map +1 -0
- package/dist/EmailOtp.d.ts +120 -0
- package/dist/EmailOtp.d.ts.map +1 -0
- package/dist/EmailOtp.js +286 -0
- package/dist/EmailOtp.js.map +1 -0
- package/dist/EmailVerification.d.ts +121 -0
- package/dist/EmailVerification.d.ts.map +1 -0
- package/dist/EmailVerification.js +200 -0
- package/dist/EmailVerification.js.map +1 -0
- package/dist/HttpApi/Api.d.ts +1956 -0
- package/dist/HttpApi/Api.d.ts.map +1 -0
- package/dist/HttpApi/Api.js +2325 -0
- package/dist/HttpApi/Api.js.map +1 -0
- package/dist/HttpApi/Endpoints.d.ts +945 -0
- package/dist/HttpApi/Endpoints.d.ts.map +1 -0
- package/dist/HttpApi/Endpoints.js +373 -0
- package/dist/HttpApi/Endpoints.js.map +1 -0
- package/dist/HttpApi/Errors.d.ts +82 -0
- package/dist/HttpApi/Errors.d.ts.map +1 -0
- package/dist/HttpApi/Errors.js +184 -0
- package/dist/HttpApi/Errors.js.map +1 -0
- package/dist/HttpApi/Schemas.d.ts +1113 -0
- package/dist/HttpApi/Schemas.d.ts.map +1 -0
- package/dist/HttpApi/Schemas.js +734 -0
- package/dist/HttpApi/Schemas.js.map +1 -0
- package/dist/HttpApi/Security.d.ts +159 -0
- package/dist/HttpApi/Security.d.ts.map +1 -0
- package/dist/HttpApi/Security.js +530 -0
- package/dist/HttpApi/Security.js.map +1 -0
- package/dist/HttpApi/Transport.d.ts +65 -0
- package/dist/HttpApi/Transport.d.ts.map +1 -0
- package/dist/HttpApi/Transport.js +311 -0
- package/dist/HttpApi/Transport.js.map +1 -0
- package/dist/HttpApi/index.d.ts +8 -0
- package/dist/HttpApi/index.d.ts.map +1 -0
- package/dist/HttpApi/index.js +7 -0
- package/dist/HttpApi/index.js.map +1 -0
- package/dist/HttpApi.d.ts +2 -0
- package/dist/HttpApi.d.ts.map +1 -0
- package/dist/HttpApi.js +2 -0
- package/dist/HttpApi.js.map +1 -0
- package/dist/Identifiers.d.ts.map +1 -1
- package/dist/Identifiers.js.map +1 -1
- package/dist/Internal.d.ts +7 -0
- package/dist/Internal.d.ts.map +1 -0
- package/dist/Internal.js +12 -0
- package/dist/Internal.js.map +1 -0
- package/dist/Jwt.d.ts +271 -0
- package/dist/Jwt.d.ts.map +1 -0
- package/dist/Jwt.js +512 -0
- package/dist/Jwt.js.map +1 -0
- package/dist/LoginApproval.d.ts +314 -0
- package/dist/LoginApproval.d.ts.map +1 -0
- package/dist/LoginApproval.js +551 -0
- package/dist/LoginApproval.js.map +1 -0
- package/dist/LoginNotification.d.ts +183 -0
- package/dist/LoginNotification.d.ts.map +1 -0
- package/dist/LoginNotification.js +329 -0
- package/dist/LoginNotification.js.map +1 -0
- package/dist/LoginRisk.d.ts +73 -0
- package/dist/LoginRisk.d.ts.map +1 -0
- package/dist/LoginRisk.js +57 -0
- package/dist/LoginRisk.js.map +1 -0
- package/dist/MagicLink.d.ts +85 -0
- package/dist/MagicLink.d.ts.map +1 -0
- package/dist/MagicLink.js +206 -0
- package/dist/MagicLink.js.map +1 -0
- package/dist/Mailer.d.ts +147 -0
- package/dist/Mailer.d.ts.map +1 -0
- package/dist/Mailer.js +208 -0
- package/dist/Mailer.js.map +1 -0
- package/dist/OAuth.d.ts +934 -0
- package/dist/OAuth.d.ts.map +1 -0
- package/dist/OAuth.js +1661 -0
- package/dist/OAuth.js.map +1 -0
- package/dist/Passkey.d.ts +334 -0
- package/dist/Passkey.d.ts.map +1 -0
- package/dist/Passkey.js +422 -0
- package/dist/Passkey.js.map +1 -0
- package/dist/PasskeySimpleWebAuthn.d.ts +11 -0
- package/dist/PasskeySimpleWebAuthn.d.ts.map +1 -0
- package/dist/PasskeySimpleWebAuthn.js +181 -0
- package/dist/PasskeySimpleWebAuthn.js.map +1 -0
- package/dist/Password.d.ts +237 -0
- package/dist/Password.d.ts.map +1 -0
- package/dist/Password.js +641 -0
- package/dist/Password.js.map +1 -0
- package/dist/Policy.d.ts +7 -4
- package/dist/Policy.d.ts.map +1 -1
- package/dist/Policy.js +28 -5
- package/dist/Policy.js.map +1 -1
- package/dist/Privacy.d.ts +15 -0
- package/dist/Privacy.d.ts.map +1 -1
- package/dist/Privacy.js +58 -1
- package/dist/Privacy.js.map +1 -1
- package/dist/RateLimiter.d.ts +104 -0
- package/dist/RateLimiter.d.ts.map +1 -0
- package/dist/RateLimiter.js +118 -0
- package/dist/RateLimiter.js.map +1 -0
- package/dist/RecoveryCode.d.ts +169 -0
- package/dist/RecoveryCode.d.ts.map +1 -0
- package/dist/RecoveryCode.js +299 -0
- package/dist/RecoveryCode.js.map +1 -0
- package/dist/RefreshToken.d.ts +222 -0
- package/dist/RefreshToken.d.ts.map +1 -0
- package/dist/RefreshToken.js +342 -0
- package/dist/RefreshToken.js.map +1 -0
- package/dist/SecurityTimeline.d.ts +72 -0
- package/dist/SecurityTimeline.d.ts.map +1 -0
- package/dist/SecurityTimeline.js +386 -0
- package/dist/SecurityTimeline.js.map +1 -0
- package/dist/Sessions.d.ts +123 -11
- package/dist/Sessions.d.ts.map +1 -1
- package/dist/Sessions.js +534 -1
- package/dist/Sessions.js.map +1 -1
- package/dist/StepUp.d.ts +44 -0
- package/dist/StepUp.d.ts.map +1 -0
- package/dist/StepUp.js +82 -0
- package/dist/StepUp.js.map +1 -0
- package/dist/Storage.d.ts +73 -5
- package/dist/Storage.d.ts.map +1 -1
- package/dist/Storage.js +11 -1
- package/dist/Storage.js.map +1 -1
- package/dist/StorageMigrations.d.ts +13 -1
- package/dist/StorageMigrations.d.ts.map +1 -1
- package/dist/StorageMigrations.js +256 -2
- package/dist/StorageMigrations.js.map +1 -1
- package/dist/Testing.d.ts +9 -1
- package/dist/Testing.d.ts.map +1 -1
- package/dist/Testing.js +30 -2
- package/dist/Testing.js.map +1 -1
- package/dist/Totp.d.ts +220 -0
- package/dist/Totp.d.ts.map +1 -0
- package/dist/Totp.js +477 -0
- package/dist/Totp.js.map +1 -0
- package/dist/TrustedDevice.d.ts +127 -0
- package/dist/TrustedDevice.d.ts.map +1 -0
- package/dist/TrustedDevice.js +252 -0
- package/dist/TrustedDevice.js.map +1 -0
- package/dist/WaitUntil.d.ts.map +1 -1
- package/dist/WaitUntil.js +1 -1
- package/dist/WaitUntil.js.map +1 -1
- package/dist/Webhook.d.ts +72 -0
- package/dist/Webhook.d.ts.map +1 -0
- package/dist/Webhook.js +82 -0
- package/dist/Webhook.js.map +1 -0
- package/dist/alchemy/cloudflare/Email.d.ts +25 -0
- package/dist/alchemy/cloudflare/Email.d.ts.map +1 -0
- package/dist/alchemy/cloudflare/Email.js +117 -0
- package/dist/alchemy/cloudflare/Email.js.map +1 -0
- package/dist/alchemy/cloudflare/RateLimitDurableObject.d.ts +34 -0
- package/dist/alchemy/cloudflare/RateLimitDurableObject.d.ts.map +1 -0
- package/dist/alchemy/cloudflare/RateLimitDurableObject.js +30 -0
- package/dist/alchemy/cloudflare/RateLimitDurableObject.js.map +1 -0
- package/dist/cloudflare/Email.d.ts +25 -0
- package/dist/cloudflare/Email.d.ts.map +1 -0
- package/dist/cloudflare/Email.js +153 -0
- package/dist/cloudflare/Email.js.map +1 -0
- package/dist/cloudflare/RateLimitDurableObject.d.ts +50 -0
- package/dist/cloudflare/RateLimitDurableObject.d.ts.map +1 -0
- package/dist/cloudflare/RateLimitDurableObject.js +51 -0
- package/dist/cloudflare/RateLimitDurableObject.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/RateLimitDurableObject.d.ts +32 -0
- package/dist/internal/RateLimitDurableObject.d.ts.map +1 -0
- package/dist/internal/RateLimitDurableObject.js +80 -0
- package/dist/internal/RateLimitDurableObject.js.map +1 -0
- package/migrations/0002_auth_password.sql +25 -0
- package/migrations/0003_auth_login_approval_review.sql +22 -0
- package/migrations/0004_auth_trusted_device.sql +12 -0
- package/migrations/0005_auth_passkey.sql +17 -0
- package/migrations/0006_auth_totp_factor.sql +17 -0
- package/migrations/0007_auth_recovery_code.sql +13 -0
- package/migrations/0008_auth_api_key.sql +17 -0
- package/migrations/0009_auth_refresh_token.sql +21 -0
- package/migrations/0010_auth_jwt_revocation.sql +8 -0
- package/migrations/0011_auth_oauth_account.sql +16 -0
- package/migrations/0012_auth_oauth_provider_token_vault.sql +20 -0
- package/migrations/0013_auth_security_timeline.sql +16 -0
- package/package.json +146 -26
- package/dist/D1Kysely.d.ts +0 -40
- package/dist/D1Kysely.d.ts.map +0 -1
- package/dist/D1Kysely.js +0 -75
- package/dist/D1Kysely.js.map +0 -1
- package/dist/KyselyStorage.d.ts +0 -41
- package/dist/KyselyStorage.d.ts.map +0 -1
- package/dist/KyselyStorage.js +0 -176
- package/dist/KyselyStorage.js.map +0 -1
|
@@ -0,0 +1,600 @@
|
|
|
1
|
+
import { Layer } from "effect";
|
|
2
|
+
import { Executor, Query, Scalar, Table } from "effect-qb/sqlite";
|
|
3
|
+
import { ApiKeyStore } from "./ApiKey.js";
|
|
4
|
+
import type { ApiKeyMarkUsedInput, ApiKeyRecord, ApiKeyRevokeInput, ApiKeyStoreService } from "./ApiKey.js";
|
|
5
|
+
import { UnixMillis } from "./Identifiers.js";
|
|
6
|
+
import { JwtRevocationStore } from "./Jwt.js";
|
|
7
|
+
import type { JwtRevocationRecord, JwtRevocationStoreService } from "./Jwt.js";
|
|
8
|
+
import { LoginApprovalReviewStore } from "./LoginApproval.js";
|
|
9
|
+
import type { LoginApprovalReviewRecord, LoginApprovalReviewStoreService, LoginApprovalReviewerId } from "./LoginApproval.js";
|
|
10
|
+
import { OAuthAccountStore, OAuthProviderTokenVault } from "./OAuth.js";
|
|
11
|
+
import type { OAuthAccountRecord, OAuthAccountStoreService, OAuthAccountUnlinkInput, OAuthProviderTokenVaultMarkRevokedInput, OAuthProviderTokenVaultRecord, OAuthProviderTokenVaultService } from "./OAuth.js";
|
|
12
|
+
import { PasskeyCredentialStore } from "./Passkey.js";
|
|
13
|
+
import type { PasskeyCredentialRecord, PasskeyCredentialRevokeInput, PasskeyCredentialStoreService, PasskeyCredentialUpdateSignCountInput } from "./Passkey.js";
|
|
14
|
+
import { RecoveryCodeStore } from "./RecoveryCode.js";
|
|
15
|
+
import type { RecoveryCodeMarkUsedInput, RecoveryCodeRecord, RecoveryCodeRevokeInput, RecoveryCodeStoreService } from "./RecoveryCode.js";
|
|
16
|
+
import { RefreshTokenStore } from "./RefreshToken.js";
|
|
17
|
+
import type { RefreshTokenMarkReuseDetectedInput, RefreshTokenRecord, RefreshTokenRevokeFamilyInput, RefreshTokenRevokeInput, RefreshTokenRotateStoreInput, RefreshTokenStoreService } from "./RefreshToken.js";
|
|
18
|
+
import { SecurityTimelineStore } from "./SecurityTimeline.js";
|
|
19
|
+
import type { SecurityTimelineEvent, SecurityTimelineStoreService } from "./SecurityTimeline.js";
|
|
20
|
+
import type { AuthMethodReference } from "./Sessions.js";
|
|
21
|
+
import { CredentialStore, SessionStore, UserStore, VerificationStore } from "./Storage.js";
|
|
22
|
+
import type { CredentialStoreService, NewPasswordCredentialRow, NewSessionRow, NewUserRow, NewVerificationRow, PasswordCredentialRow, PasswordCredentialUpdatePasswordInput, SessionRefreshStoreInput, SessionRevokeAllForUserStoreInput, SessionRevokeStoreInput, SessionRotateStoreInput, SessionRow, SessionStoreService, SessionUpdateClaimsStoreInput, UserMarkEmailVerifiedInput, UserRow, UserStoreService, VerificationConsumeInput, VerificationRow, VerificationStoreService } from "./Storage.js";
|
|
23
|
+
import { TotpFactorStore } from "./Totp.js";
|
|
24
|
+
import type { TotpFactorConfirmInput, TotpFactorMarkUsedInput, TotpFactorRecord, TotpFactorRevokeInput, TotpFactorStoreService } from "./Totp.js";
|
|
25
|
+
import { TrustedDeviceStore } from "./TrustedDevice.js";
|
|
26
|
+
import type { TrustedDeviceRecord, TrustedDeviceStoreService, TrustedDeviceStoreUpsertInput } from "./TrustedDevice.js";
|
|
27
|
+
export interface D1EffectQbResult<Row extends Readonly<Record<string, unknown>> = Readonly<Record<string, unknown>>> {
|
|
28
|
+
readonly success?: boolean;
|
|
29
|
+
readonly error?: string;
|
|
30
|
+
readonly results?: readonly Row[];
|
|
31
|
+
}
|
|
32
|
+
export interface D1EffectQbPreparedStatementLike {
|
|
33
|
+
readonly bind: (...values: readonly unknown[]) => D1EffectQbPreparedStatementLike;
|
|
34
|
+
readonly all: <Row extends Readonly<Record<string, unknown>> = Readonly<Record<string, unknown>>>() => Promise<D1EffectQbResult<Row>>;
|
|
35
|
+
}
|
|
36
|
+
export interface D1EffectQbDatabaseLike {
|
|
37
|
+
readonly prepare: (sql: string) => D1EffectQbPreparedStatementLike;
|
|
38
|
+
}
|
|
39
|
+
declare const D1EffectQbError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
40
|
+
readonly _tag: "D1EffectQbError";
|
|
41
|
+
} & Readonly<A>;
|
|
42
|
+
export declare class D1EffectQbError extends D1EffectQbError_base<{
|
|
43
|
+
readonly message: string;
|
|
44
|
+
readonly cause?: unknown;
|
|
45
|
+
}> {
|
|
46
|
+
}
|
|
47
|
+
export interface EffectQbAuthUserSelectedRow {
|
|
48
|
+
readonly id: string;
|
|
49
|
+
readonly email: string;
|
|
50
|
+
readonly emailVerified: boolean | number | string | null;
|
|
51
|
+
readonly createdAt: number;
|
|
52
|
+
readonly updatedAt: number;
|
|
53
|
+
readonly disabledAt: number | null;
|
|
54
|
+
readonly metadata: unknown;
|
|
55
|
+
}
|
|
56
|
+
export interface EffectQbAuthCredentialSelectedRow {
|
|
57
|
+
readonly id: string;
|
|
58
|
+
readonly userId: string;
|
|
59
|
+
readonly type: string;
|
|
60
|
+
readonly passwordHash: string | null;
|
|
61
|
+
readonly createdAt: number;
|
|
62
|
+
readonly updatedAt: number;
|
|
63
|
+
readonly revokedAt: number | null;
|
|
64
|
+
readonly metadata: unknown;
|
|
65
|
+
}
|
|
66
|
+
export interface EffectQbAuthSessionSelectedRow {
|
|
67
|
+
readonly id: string;
|
|
68
|
+
readonly userId: string;
|
|
69
|
+
readonly secretHash: string;
|
|
70
|
+
readonly createdAt: number;
|
|
71
|
+
readonly expiresAt: number;
|
|
72
|
+
readonly authTime: number;
|
|
73
|
+
readonly aal: string;
|
|
74
|
+
readonly amr: string | readonly AuthMethodReference[];
|
|
75
|
+
readonly mfaVerifiedAt: number | null;
|
|
76
|
+
readonly metadata: unknown;
|
|
77
|
+
readonly revokedAt: number | null;
|
|
78
|
+
readonly lastSeenAt: number | null;
|
|
79
|
+
readonly rotatedAt: number | null;
|
|
80
|
+
}
|
|
81
|
+
export interface EffectQbAuthVerificationSelectedRow {
|
|
82
|
+
readonly id: string;
|
|
83
|
+
readonly type: string;
|
|
84
|
+
readonly subject: string;
|
|
85
|
+
readonly secretHash: string | null;
|
|
86
|
+
readonly createdAt: number;
|
|
87
|
+
readonly expiresAt: number;
|
|
88
|
+
readonly metadata: unknown;
|
|
89
|
+
readonly consumedAt: number | null;
|
|
90
|
+
}
|
|
91
|
+
export interface EffectQbAuthLoginApprovalReviewSelectedRow {
|
|
92
|
+
readonly approvalChallengeId: string;
|
|
93
|
+
readonly flowId: string;
|
|
94
|
+
readonly userId: string;
|
|
95
|
+
readonly channel: string;
|
|
96
|
+
readonly reason: string;
|
|
97
|
+
readonly sessionBinding: string;
|
|
98
|
+
readonly sameDeviceRequired: boolean | number | string | null;
|
|
99
|
+
readonly status: string;
|
|
100
|
+
readonly createdAt: number;
|
|
101
|
+
readonly expiresAt: number;
|
|
102
|
+
readonly reviewedAt: number | null;
|
|
103
|
+
readonly reviewedBy: string | null;
|
|
104
|
+
readonly deniedReason: string | null;
|
|
105
|
+
readonly risk: unknown;
|
|
106
|
+
readonly metadata: unknown;
|
|
107
|
+
readonly reviewMetadata: unknown;
|
|
108
|
+
}
|
|
109
|
+
export interface EffectQbAuthTrustedDeviceSelectedRow {
|
|
110
|
+
readonly userId: string;
|
|
111
|
+
readonly tokenHash: string;
|
|
112
|
+
readonly createdAt: number;
|
|
113
|
+
readonly lastSeenAt: number;
|
|
114
|
+
readonly expiresAt: number;
|
|
115
|
+
readonly metadata: unknown;
|
|
116
|
+
}
|
|
117
|
+
export interface EffectQbAuthPasskeyCredentialSelectedRow {
|
|
118
|
+
readonly id: string;
|
|
119
|
+
readonly userId: string;
|
|
120
|
+
readonly credentialId: string;
|
|
121
|
+
readonly publicKey: string;
|
|
122
|
+
readonly signCount: number;
|
|
123
|
+
readonly transports: unknown;
|
|
124
|
+
readonly backedUp: boolean | number | string | null;
|
|
125
|
+
readonly createdAt: number;
|
|
126
|
+
readonly lastUsedAt: number | null;
|
|
127
|
+
readonly revokedAt: number | null;
|
|
128
|
+
readonly metadata: unknown;
|
|
129
|
+
}
|
|
130
|
+
export interface EffectQbAuthTotpFactorSelectedRow {
|
|
131
|
+
readonly id: string;
|
|
132
|
+
readonly userId: string;
|
|
133
|
+
readonly secret: string;
|
|
134
|
+
readonly algorithm: string;
|
|
135
|
+
readonly digits: number;
|
|
136
|
+
readonly period: number;
|
|
137
|
+
readonly createdAt: number;
|
|
138
|
+
readonly confirmedAt: number | null;
|
|
139
|
+
readonly lastUsedAt: number | null;
|
|
140
|
+
readonly revokedAt: number | null;
|
|
141
|
+
readonly metadata: unknown;
|
|
142
|
+
}
|
|
143
|
+
export interface EffectQbAuthRecoveryCodeSelectedRow {
|
|
144
|
+
readonly id: string;
|
|
145
|
+
readonly userId: string;
|
|
146
|
+
readonly codeHash: string;
|
|
147
|
+
readonly createdAt: number;
|
|
148
|
+
readonly usedAt: number | null;
|
|
149
|
+
readonly revokedAt: number | null;
|
|
150
|
+
readonly metadata: unknown;
|
|
151
|
+
}
|
|
152
|
+
export interface EffectQbAuthApiKeySelectedRow {
|
|
153
|
+
readonly id: string;
|
|
154
|
+
readonly userId: string;
|
|
155
|
+
readonly prefix: string;
|
|
156
|
+
readonly secretHash: string;
|
|
157
|
+
readonly scopes: unknown;
|
|
158
|
+
readonly createdAt: number;
|
|
159
|
+
readonly expiresAt: number | null;
|
|
160
|
+
readonly lastUsedAt: number | null;
|
|
161
|
+
readonly revokedAt: number | null;
|
|
162
|
+
readonly metadata: unknown;
|
|
163
|
+
}
|
|
164
|
+
export interface EffectQbAuthRefreshTokenSelectedRow {
|
|
165
|
+
readonly id: string;
|
|
166
|
+
readonly familyId: string;
|
|
167
|
+
readonly userId: string;
|
|
168
|
+
readonly secretHash: string;
|
|
169
|
+
readonly createdAt: number;
|
|
170
|
+
readonly expiresAt: number;
|
|
171
|
+
readonly lastUsedAt: number | null;
|
|
172
|
+
readonly rotatedAt: number | null;
|
|
173
|
+
readonly replacedById: string | null;
|
|
174
|
+
readonly revokedAt: number | null;
|
|
175
|
+
readonly reuseDetectedAt: number | null;
|
|
176
|
+
readonly metadata: unknown;
|
|
177
|
+
}
|
|
178
|
+
export interface EffectQbAuthJwtRevocationSelectedRow {
|
|
179
|
+
readonly jwtId: string;
|
|
180
|
+
readonly revokedAt: number;
|
|
181
|
+
readonly expiresAt: number | null;
|
|
182
|
+
readonly reason: string | null;
|
|
183
|
+
}
|
|
184
|
+
export interface EffectQbAuthOAuthAccountSelectedRow {
|
|
185
|
+
readonly id: string;
|
|
186
|
+
readonly providerId: string;
|
|
187
|
+
readonly providerAccountId: string;
|
|
188
|
+
readonly userId: string;
|
|
189
|
+
readonly email: string | null;
|
|
190
|
+
readonly emailVerified: boolean | number | string | null;
|
|
191
|
+
readonly createdAt: number;
|
|
192
|
+
readonly updatedAt: number;
|
|
193
|
+
readonly unlinkedAt: number | null;
|
|
194
|
+
readonly metadata: unknown;
|
|
195
|
+
}
|
|
196
|
+
export interface EffectQbAuthOAuthProviderTokenVaultSelectedRow {
|
|
197
|
+
readonly accountId: string;
|
|
198
|
+
readonly userId: string;
|
|
199
|
+
readonly providerId: string;
|
|
200
|
+
readonly providerAccountId: string;
|
|
201
|
+
readonly accessTokenCiphertext: string;
|
|
202
|
+
readonly refreshTokenCiphertext: string | null;
|
|
203
|
+
readonly idTokenCiphertext: string | null;
|
|
204
|
+
readonly tokenType: string;
|
|
205
|
+
readonly scopes: unknown;
|
|
206
|
+
readonly expiresAt: number | null;
|
|
207
|
+
readonly updatedAt: number;
|
|
208
|
+
readonly revokedAt: number | null;
|
|
209
|
+
readonly revocationReason: string | null;
|
|
210
|
+
}
|
|
211
|
+
export interface EffectQbAuthSecurityTimelineSelectedRow {
|
|
212
|
+
readonly id: string;
|
|
213
|
+
readonly userId: string;
|
|
214
|
+
readonly type: string;
|
|
215
|
+
readonly category: string;
|
|
216
|
+
readonly severity: string;
|
|
217
|
+
readonly occurredAt: number;
|
|
218
|
+
readonly summary: string;
|
|
219
|
+
readonly actor: unknown;
|
|
220
|
+
readonly request: unknown;
|
|
221
|
+
readonly metadata: unknown;
|
|
222
|
+
}
|
|
223
|
+
declare const authSqliteTablesTypeId: unique symbol;
|
|
224
|
+
export interface AuthSqliteTableNames {
|
|
225
|
+
readonly user?: string;
|
|
226
|
+
readonly credential?: string;
|
|
227
|
+
readonly session?: string;
|
|
228
|
+
readonly verification?: string;
|
|
229
|
+
readonly loginApprovalReview?: string;
|
|
230
|
+
readonly trustedDevice?: string;
|
|
231
|
+
readonly passkeyCredential?: string;
|
|
232
|
+
readonly totpFactor?: string;
|
|
233
|
+
readonly recoveryCode?: string;
|
|
234
|
+
readonly apiKey?: string;
|
|
235
|
+
readonly refreshToken?: string;
|
|
236
|
+
readonly jwtRevocation?: string;
|
|
237
|
+
readonly oauthAccount?: string;
|
|
238
|
+
readonly oauthProviderTokenVault?: string;
|
|
239
|
+
readonly securityTimeline?: string;
|
|
240
|
+
}
|
|
241
|
+
type EffectQbSqliteTable = Table.AnyTable;
|
|
242
|
+
type EffectQbInsertInput<TableValue extends EffectQbSqliteTable> = Query.MutationInputOf<Table.InsertOf<TableValue>>;
|
|
243
|
+
type EffectQbUpdateInput<TableValue extends EffectQbSqliteTable> = Query.MutationInputOf<Table.UpdateOf<TableValue>>;
|
|
244
|
+
type EffectQbSqliteExpression = Scalar.Scalar<unknown, Scalar.DbType.Any & {
|
|
245
|
+
readonly dialect: "sqlite";
|
|
246
|
+
}, Scalar.Nullability, "sqlite", Scalar.ScalarKind, Scalar.BindingId, string>;
|
|
247
|
+
type EffectQbSelection = Readonly<Record<string, EffectQbSqliteExpression>>;
|
|
248
|
+
export interface EffectQbAuthUserTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
249
|
+
readonly table: TableValue;
|
|
250
|
+
readonly select: EffectQbSelection & {
|
|
251
|
+
readonly id: EffectQbSqliteExpression;
|
|
252
|
+
readonly email: EffectQbSqliteExpression;
|
|
253
|
+
readonly emailVerified: EffectQbSqliteExpression;
|
|
254
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
255
|
+
readonly updatedAt: EffectQbSqliteExpression;
|
|
256
|
+
readonly disabledAt: EffectQbSqliteExpression;
|
|
257
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
258
|
+
};
|
|
259
|
+
readonly insert: (row: NewUserRow) => EffectQbInsertInput<TableValue>;
|
|
260
|
+
readonly markEmailVerified: (input: UserMarkEmailVerifiedInput) => EffectQbUpdateInput<TableValue>;
|
|
261
|
+
readonly decode?: (row: EffectQbAuthUserSelectedRow) => UserRow;
|
|
262
|
+
}
|
|
263
|
+
export interface EffectQbAuthCredentialTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
264
|
+
readonly table: TableValue;
|
|
265
|
+
readonly select: EffectQbSelection & {
|
|
266
|
+
readonly id: EffectQbSqliteExpression;
|
|
267
|
+
readonly userId: EffectQbSqliteExpression;
|
|
268
|
+
readonly type: EffectQbSqliteExpression;
|
|
269
|
+
readonly passwordHash: EffectQbSqliteExpression;
|
|
270
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
271
|
+
readonly updatedAt: EffectQbSqliteExpression;
|
|
272
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
273
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
274
|
+
};
|
|
275
|
+
readonly insertPassword: (row: NewPasswordCredentialRow) => EffectQbInsertInput<TableValue>;
|
|
276
|
+
readonly updatePassword: (input: PasswordCredentialUpdatePasswordInput) => EffectQbUpdateInput<TableValue>;
|
|
277
|
+
readonly decodePassword?: (row: EffectQbAuthCredentialSelectedRow) => PasswordCredentialRow;
|
|
278
|
+
}
|
|
279
|
+
export type EffectQbSessionRevokeInput = SessionRevokeStoreInput | SessionRevokeAllForUserStoreInput;
|
|
280
|
+
export interface EffectQbAuthSessionTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
281
|
+
readonly table: TableValue;
|
|
282
|
+
readonly select: EffectQbSelection & {
|
|
283
|
+
readonly id: EffectQbSqliteExpression;
|
|
284
|
+
readonly userId: EffectQbSqliteExpression;
|
|
285
|
+
readonly secretHash: EffectQbSqliteExpression;
|
|
286
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
287
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
288
|
+
readonly authTime: EffectQbSqliteExpression;
|
|
289
|
+
readonly aal: EffectQbSqliteExpression;
|
|
290
|
+
readonly amr: EffectQbSqliteExpression;
|
|
291
|
+
readonly mfaVerifiedAt: EffectQbSqliteExpression;
|
|
292
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
293
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
294
|
+
readonly lastSeenAt: EffectQbSqliteExpression;
|
|
295
|
+
readonly rotatedAt: EffectQbSqliteExpression;
|
|
296
|
+
};
|
|
297
|
+
readonly insert: (row: NewSessionRow) => EffectQbInsertInput<TableValue>;
|
|
298
|
+
readonly refresh: (input: SessionRefreshStoreInput) => EffectQbUpdateInput<TableValue>;
|
|
299
|
+
readonly rotate: (input: SessionRotateStoreInput) => EffectQbUpdateInput<TableValue>;
|
|
300
|
+
readonly updateClaims: (row: SessionRow, input: SessionUpdateClaimsStoreInput) => EffectQbUpdateInput<TableValue>;
|
|
301
|
+
readonly revoke: (input: EffectQbSessionRevokeInput) => EffectQbUpdateInput<TableValue>;
|
|
302
|
+
readonly decode?: (row: EffectQbAuthSessionSelectedRow) => SessionRow;
|
|
303
|
+
}
|
|
304
|
+
export interface EffectQbAuthVerificationTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
305
|
+
readonly table: TableValue;
|
|
306
|
+
readonly select: EffectQbSelection & {
|
|
307
|
+
readonly id: EffectQbSqliteExpression;
|
|
308
|
+
readonly type: EffectQbSqliteExpression;
|
|
309
|
+
readonly subject: EffectQbSqliteExpression;
|
|
310
|
+
readonly secretHash: EffectQbSqliteExpression;
|
|
311
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
312
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
313
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
314
|
+
readonly consumedAt: EffectQbSqliteExpression;
|
|
315
|
+
};
|
|
316
|
+
readonly insert: (row: NewVerificationRow) => EffectQbInsertInput<TableValue>;
|
|
317
|
+
readonly consume: (input: VerificationConsumeInput) => EffectQbUpdateInput<TableValue>;
|
|
318
|
+
readonly decode?: (row: EffectQbAuthVerificationSelectedRow) => VerificationRow;
|
|
319
|
+
}
|
|
320
|
+
export interface EffectQbAuthLoginApprovalReviewTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
321
|
+
readonly table: TableValue;
|
|
322
|
+
readonly select: EffectQbSelection & {
|
|
323
|
+
readonly approvalChallengeId: EffectQbSqliteExpression;
|
|
324
|
+
readonly flowId: EffectQbSqliteExpression;
|
|
325
|
+
readonly userId: EffectQbSqliteExpression;
|
|
326
|
+
readonly channel: EffectQbSqliteExpression;
|
|
327
|
+
readonly reason: EffectQbSqliteExpression;
|
|
328
|
+
readonly sessionBinding: EffectQbSqliteExpression;
|
|
329
|
+
readonly sameDeviceRequired: EffectQbSqliteExpression;
|
|
330
|
+
readonly status: EffectQbSqliteExpression;
|
|
331
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
332
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
333
|
+
readonly reviewedAt: EffectQbSqliteExpression;
|
|
334
|
+
readonly reviewedBy: EffectQbSqliteExpression;
|
|
335
|
+
readonly deniedReason: EffectQbSqliteExpression;
|
|
336
|
+
readonly risk: EffectQbSqliteExpression;
|
|
337
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
338
|
+
readonly reviewMetadata: EffectQbSqliteExpression;
|
|
339
|
+
};
|
|
340
|
+
readonly insertPending: (row: LoginApprovalReviewRecord) => EffectQbInsertInput<TableValue>;
|
|
341
|
+
readonly approve: (input: {
|
|
342
|
+
readonly reviewedAt: UnixMillis;
|
|
343
|
+
readonly reviewedBy?: LoginApprovalReviewerId;
|
|
344
|
+
readonly metadata?: Readonly<Record<string, unknown>>;
|
|
345
|
+
}) => EffectQbUpdateInput<TableValue>;
|
|
346
|
+
readonly deny: (input: {
|
|
347
|
+
readonly reviewedAt: UnixMillis;
|
|
348
|
+
readonly reviewedBy?: LoginApprovalReviewerId;
|
|
349
|
+
readonly reason?: string;
|
|
350
|
+
readonly metadata?: Readonly<Record<string, unknown>>;
|
|
351
|
+
}) => EffectQbUpdateInput<TableValue>;
|
|
352
|
+
readonly decode?: (row: EffectQbAuthLoginApprovalReviewSelectedRow) => LoginApprovalReviewRecord;
|
|
353
|
+
}
|
|
354
|
+
export interface EffectQbAuthTrustedDeviceTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
355
|
+
readonly table: TableValue;
|
|
356
|
+
readonly select: EffectQbSelection & {
|
|
357
|
+
readonly userId: EffectQbSqliteExpression;
|
|
358
|
+
readonly tokenHash: EffectQbSqliteExpression;
|
|
359
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
360
|
+
readonly lastSeenAt: EffectQbSqliteExpression;
|
|
361
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
362
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
363
|
+
};
|
|
364
|
+
readonly insert: (input: TrustedDeviceStoreUpsertInput, createdAt: UnixMillis) => EffectQbInsertInput<TableValue>;
|
|
365
|
+
readonly update: (input: TrustedDeviceStoreUpsertInput, existing: TrustedDeviceRecord) => EffectQbUpdateInput<TableValue>;
|
|
366
|
+
readonly decode?: (row: EffectQbAuthTrustedDeviceSelectedRow) => TrustedDeviceRecord;
|
|
367
|
+
}
|
|
368
|
+
export interface EffectQbAuthPasskeyCredentialTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
369
|
+
readonly table: TableValue;
|
|
370
|
+
readonly select: EffectQbSelection & {
|
|
371
|
+
readonly id: EffectQbSqliteExpression;
|
|
372
|
+
readonly userId: EffectQbSqliteExpression;
|
|
373
|
+
readonly credentialId: EffectQbSqliteExpression;
|
|
374
|
+
readonly publicKey: EffectQbSqliteExpression;
|
|
375
|
+
readonly signCount: EffectQbSqliteExpression;
|
|
376
|
+
readonly transports: EffectQbSqliteExpression;
|
|
377
|
+
readonly backedUp: EffectQbSqliteExpression;
|
|
378
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
379
|
+
readonly lastUsedAt: EffectQbSqliteExpression;
|
|
380
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
381
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
382
|
+
};
|
|
383
|
+
readonly insert: (row: PasskeyCredentialRecord) => EffectQbInsertInput<TableValue>;
|
|
384
|
+
readonly updateSignCount: (input: PasskeyCredentialUpdateSignCountInput) => EffectQbUpdateInput<TableValue>;
|
|
385
|
+
readonly revoke: (input: PasskeyCredentialRevokeInput, row: PasskeyCredentialRecord) => EffectQbUpdateInput<TableValue>;
|
|
386
|
+
readonly decode?: (row: EffectQbAuthPasskeyCredentialSelectedRow) => PasskeyCredentialRecord;
|
|
387
|
+
}
|
|
388
|
+
export interface EffectQbAuthTotpFactorTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
389
|
+
readonly table: TableValue;
|
|
390
|
+
readonly select: EffectQbSelection & {
|
|
391
|
+
readonly id: EffectQbSqliteExpression;
|
|
392
|
+
readonly userId: EffectQbSqliteExpression;
|
|
393
|
+
readonly secret: EffectQbSqliteExpression;
|
|
394
|
+
readonly algorithm: EffectQbSqliteExpression;
|
|
395
|
+
readonly digits: EffectQbSqliteExpression;
|
|
396
|
+
readonly period: EffectQbSqliteExpression;
|
|
397
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
398
|
+
readonly confirmedAt: EffectQbSqliteExpression;
|
|
399
|
+
readonly lastUsedAt: EffectQbSqliteExpression;
|
|
400
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
401
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
402
|
+
};
|
|
403
|
+
readonly insert: (row: TotpFactorRecord) => EffectQbInsertInput<TableValue>;
|
|
404
|
+
readonly confirm: (input: TotpFactorConfirmInput) => EffectQbUpdateInput<TableValue>;
|
|
405
|
+
readonly markUsed: (input: TotpFactorMarkUsedInput) => EffectQbUpdateInput<TableValue>;
|
|
406
|
+
readonly revoke: (input: TotpFactorRevokeInput, row: TotpFactorRecord) => EffectQbUpdateInput<TableValue>;
|
|
407
|
+
readonly decode?: (row: EffectQbAuthTotpFactorSelectedRow) => TotpFactorRecord;
|
|
408
|
+
}
|
|
409
|
+
export interface EffectQbAuthRecoveryCodeTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
410
|
+
readonly table: TableValue;
|
|
411
|
+
readonly select: EffectQbSelection & {
|
|
412
|
+
readonly id: EffectQbSqliteExpression;
|
|
413
|
+
readonly userId: EffectQbSqliteExpression;
|
|
414
|
+
readonly codeHash: EffectQbSqliteExpression;
|
|
415
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
416
|
+
readonly usedAt: EffectQbSqliteExpression;
|
|
417
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
418
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
419
|
+
};
|
|
420
|
+
readonly insert: (row: RecoveryCodeRecord) => EffectQbInsertInput<TableValue>;
|
|
421
|
+
readonly markUsed: (input: RecoveryCodeMarkUsedInput) => EffectQbUpdateInput<TableValue>;
|
|
422
|
+
readonly revoke: (input: RecoveryCodeRevokeInput, row: RecoveryCodeRecord) => EffectQbUpdateInput<TableValue>;
|
|
423
|
+
readonly decode?: (row: EffectQbAuthRecoveryCodeSelectedRow) => RecoveryCodeRecord;
|
|
424
|
+
}
|
|
425
|
+
export interface EffectQbAuthApiKeyTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
426
|
+
readonly table: TableValue;
|
|
427
|
+
readonly select: EffectQbSelection & {
|
|
428
|
+
readonly id: EffectQbSqliteExpression;
|
|
429
|
+
readonly userId: EffectQbSqliteExpression;
|
|
430
|
+
readonly prefix: EffectQbSqliteExpression;
|
|
431
|
+
readonly secretHash: EffectQbSqliteExpression;
|
|
432
|
+
readonly scopes: EffectQbSqliteExpression;
|
|
433
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
434
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
435
|
+
readonly lastUsedAt: EffectQbSqliteExpression;
|
|
436
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
437
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
438
|
+
};
|
|
439
|
+
readonly insert: (row: ApiKeyRecord) => EffectQbInsertInput<TableValue>;
|
|
440
|
+
readonly markUsed: (input: ApiKeyMarkUsedInput) => EffectQbUpdateInput<TableValue>;
|
|
441
|
+
readonly revoke: (input: ApiKeyRevokeInput, row: ApiKeyRecord) => EffectQbUpdateInput<TableValue>;
|
|
442
|
+
readonly decode?: (row: EffectQbAuthApiKeySelectedRow) => ApiKeyRecord;
|
|
443
|
+
}
|
|
444
|
+
export interface EffectQbAuthRefreshTokenTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
445
|
+
readonly table: TableValue;
|
|
446
|
+
readonly select: EffectQbSelection & {
|
|
447
|
+
readonly id: EffectQbSqliteExpression;
|
|
448
|
+
readonly familyId: EffectQbSqliteExpression;
|
|
449
|
+
readonly userId: EffectQbSqliteExpression;
|
|
450
|
+
readonly secretHash: EffectQbSqliteExpression;
|
|
451
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
452
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
453
|
+
readonly lastUsedAt: EffectQbSqliteExpression;
|
|
454
|
+
readonly rotatedAt: EffectQbSqliteExpression;
|
|
455
|
+
readonly replacedById: EffectQbSqliteExpression;
|
|
456
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
457
|
+
readonly reuseDetectedAt: EffectQbSqliteExpression;
|
|
458
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
459
|
+
};
|
|
460
|
+
readonly insert: (row: RefreshTokenRecord) => EffectQbInsertInput<TableValue>;
|
|
461
|
+
readonly rotate: (input: RefreshTokenRotateStoreInput) => EffectQbUpdateInput<TableValue>;
|
|
462
|
+
readonly markReuseDetected: (input: RefreshTokenMarkReuseDetectedInput) => EffectQbUpdateInput<TableValue>;
|
|
463
|
+
readonly revoke: (input: RefreshTokenRevokeInput, row: RefreshTokenRecord) => EffectQbUpdateInput<TableValue>;
|
|
464
|
+
readonly revokeFamily: (input: RefreshTokenRevokeFamilyInput, row: RefreshTokenRecord) => EffectQbUpdateInput<TableValue>;
|
|
465
|
+
readonly decode?: (row: EffectQbAuthRefreshTokenSelectedRow) => RefreshTokenRecord;
|
|
466
|
+
}
|
|
467
|
+
export interface EffectQbAuthJwtRevocationTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
468
|
+
readonly table: TableValue;
|
|
469
|
+
readonly select: EffectQbSelection & {
|
|
470
|
+
readonly jwtId: EffectQbSqliteExpression;
|
|
471
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
472
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
473
|
+
readonly reason: EffectQbSqliteExpression;
|
|
474
|
+
};
|
|
475
|
+
readonly insert: (record: JwtRevocationRecord) => EffectQbInsertInput<TableValue>;
|
|
476
|
+
readonly update: (record: JwtRevocationRecord) => EffectQbUpdateInput<TableValue>;
|
|
477
|
+
readonly decode?: (row: EffectQbAuthJwtRevocationSelectedRow) => JwtRevocationRecord;
|
|
478
|
+
}
|
|
479
|
+
export interface EffectQbAuthOAuthAccountTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
480
|
+
readonly table: TableValue;
|
|
481
|
+
readonly select: EffectQbSelection & {
|
|
482
|
+
readonly id: EffectQbSqliteExpression;
|
|
483
|
+
readonly providerId: EffectQbSqliteExpression;
|
|
484
|
+
readonly providerAccountId: EffectQbSqliteExpression;
|
|
485
|
+
readonly userId: EffectQbSqliteExpression;
|
|
486
|
+
readonly email: EffectQbSqliteExpression;
|
|
487
|
+
readonly emailVerified: EffectQbSqliteExpression;
|
|
488
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
489
|
+
readonly updatedAt: EffectQbSqliteExpression;
|
|
490
|
+
readonly unlinkedAt: EffectQbSqliteExpression;
|
|
491
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
492
|
+
};
|
|
493
|
+
readonly insert: (row: OAuthAccountRecord) => EffectQbInsertInput<TableValue>;
|
|
494
|
+
readonly unlink: (input: OAuthAccountUnlinkInput, row: OAuthAccountRecord) => EffectQbUpdateInput<TableValue>;
|
|
495
|
+
readonly decode?: (row: EffectQbAuthOAuthAccountSelectedRow) => OAuthAccountRecord;
|
|
496
|
+
}
|
|
497
|
+
export interface EffectQbAuthOAuthProviderTokenVaultTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
498
|
+
readonly table: TableValue;
|
|
499
|
+
readonly select: EffectQbSelection & {
|
|
500
|
+
readonly accountId: EffectQbSqliteExpression;
|
|
501
|
+
readonly userId: EffectQbSqliteExpression;
|
|
502
|
+
readonly providerId: EffectQbSqliteExpression;
|
|
503
|
+
readonly providerAccountId: EffectQbSqliteExpression;
|
|
504
|
+
readonly accessTokenCiphertext: EffectQbSqliteExpression;
|
|
505
|
+
readonly refreshTokenCiphertext: EffectQbSqliteExpression;
|
|
506
|
+
readonly idTokenCiphertext: EffectQbSqliteExpression;
|
|
507
|
+
readonly tokenType: EffectQbSqliteExpression;
|
|
508
|
+
readonly scopes: EffectQbSqliteExpression;
|
|
509
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
510
|
+
readonly updatedAt: EffectQbSqliteExpression;
|
|
511
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
512
|
+
readonly revocationReason: EffectQbSqliteExpression;
|
|
513
|
+
};
|
|
514
|
+
readonly insert: (row: OAuthProviderTokenVaultRecord) => EffectQbInsertInput<TableValue>;
|
|
515
|
+
readonly update: (row: OAuthProviderTokenVaultRecord) => EffectQbUpdateInput<TableValue>;
|
|
516
|
+
readonly markRevoked: (input: OAuthProviderTokenVaultMarkRevokedInput) => EffectQbUpdateInput<TableValue>;
|
|
517
|
+
readonly decode?: (row: EffectQbAuthOAuthProviderTokenVaultSelectedRow) => OAuthProviderTokenVaultRecord;
|
|
518
|
+
}
|
|
519
|
+
export interface EffectQbAuthSecurityTimelineTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
520
|
+
readonly table: TableValue;
|
|
521
|
+
readonly select: EffectQbSelection & {
|
|
522
|
+
readonly id: EffectQbSqliteExpression;
|
|
523
|
+
readonly userId: EffectQbSqliteExpression;
|
|
524
|
+
readonly type: EffectQbSqliteExpression;
|
|
525
|
+
readonly category: EffectQbSqliteExpression;
|
|
526
|
+
readonly severity: EffectQbSqliteExpression;
|
|
527
|
+
readonly occurredAt: EffectQbSqliteExpression;
|
|
528
|
+
readonly summary: EffectQbSqliteExpression;
|
|
529
|
+
readonly actor: EffectQbSqliteExpression;
|
|
530
|
+
readonly request: EffectQbSqliteExpression;
|
|
531
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
532
|
+
};
|
|
533
|
+
readonly insert: (event: SecurityTimelineEvent) => EffectQbInsertInput<TableValue>;
|
|
534
|
+
readonly decode?: (row: EffectQbAuthSecurityTimelineSelectedRow) => SecurityTimelineEvent;
|
|
535
|
+
}
|
|
536
|
+
export interface EffectQbAuthTablesInput {
|
|
537
|
+
readonly user: EffectQbAuthUserTable;
|
|
538
|
+
readonly credential: EffectQbAuthCredentialTable;
|
|
539
|
+
readonly session: EffectQbAuthSessionTable;
|
|
540
|
+
readonly verification: EffectQbAuthVerificationTable;
|
|
541
|
+
readonly loginApprovalReview: EffectQbAuthLoginApprovalReviewTable;
|
|
542
|
+
readonly trustedDevice: EffectQbAuthTrustedDeviceTable;
|
|
543
|
+
readonly passkeyCredential: EffectQbAuthPasskeyCredentialTable;
|
|
544
|
+
readonly totpFactor: EffectQbAuthTotpFactorTable;
|
|
545
|
+
readonly recoveryCode: EffectQbAuthRecoveryCodeTable;
|
|
546
|
+
readonly apiKey: EffectQbAuthApiKeyTable;
|
|
547
|
+
readonly refreshToken: EffectQbAuthRefreshTokenTable;
|
|
548
|
+
readonly jwtRevocation: EffectQbAuthJwtRevocationTable;
|
|
549
|
+
readonly oauthAccount: EffectQbAuthOAuthAccountTable;
|
|
550
|
+
readonly oauthProviderTokenVault: EffectQbAuthOAuthProviderTokenVaultTable;
|
|
551
|
+
readonly securityTimeline: EffectQbAuthSecurityTimelineTable;
|
|
552
|
+
}
|
|
553
|
+
export interface AuthSqliteTables extends EffectQbAuthTablesInput {
|
|
554
|
+
readonly [authSqliteTablesTypeId]: typeof authSqliteTablesTypeId;
|
|
555
|
+
}
|
|
556
|
+
export interface EffectQbSqliteAuthStorageOptions {
|
|
557
|
+
readonly tables?: AuthSqliteTables;
|
|
558
|
+
}
|
|
559
|
+
export interface EffectQbSqliteStorageStores {
|
|
560
|
+
readonly userStore: UserStoreService;
|
|
561
|
+
readonly credentialStore: CredentialStoreService;
|
|
562
|
+
readonly sessionStore: SessionStoreService;
|
|
563
|
+
readonly verificationStore: VerificationStoreService;
|
|
564
|
+
readonly loginApprovalReviewStore: LoginApprovalReviewStoreService;
|
|
565
|
+
readonly trustedDeviceStore: TrustedDeviceStoreService;
|
|
566
|
+
readonly passkeyCredentialStore: PasskeyCredentialStoreService;
|
|
567
|
+
readonly totpFactorStore: TotpFactorStoreService;
|
|
568
|
+
readonly recoveryCodeStore: RecoveryCodeStoreService;
|
|
569
|
+
readonly apiKeyStore: ApiKeyStoreService;
|
|
570
|
+
readonly refreshTokenStore: RefreshTokenStoreService;
|
|
571
|
+
readonly jwtRevocationStore: JwtRevocationStoreService;
|
|
572
|
+
readonly oauthAccountStore: OAuthAccountStoreService;
|
|
573
|
+
readonly oauthProviderTokenVault: OAuthProviderTokenVaultService;
|
|
574
|
+
readonly securityTimelineStore: SecurityTimelineStoreService;
|
|
575
|
+
}
|
|
576
|
+
type EffectQbSqliteExecutor = Executor.QueryExecutor<never>;
|
|
577
|
+
export declare const defineEffectQbAuthTables: <const Tables extends EffectQbAuthTablesInput>(tables: Tables) => AuthSqliteTables & Tables;
|
|
578
|
+
export declare const makeAuthSqliteTables: (names?: AuthSqliteTableNames) => AuthSqliteTables;
|
|
579
|
+
export declare const authSqliteTables: AuthSqliteTables;
|
|
580
|
+
export declare const makeEffectQbSqliteUserStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => UserStoreService;
|
|
581
|
+
export declare const makeEffectQbSqliteCredentialStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => CredentialStoreService;
|
|
582
|
+
export declare const makeEffectQbSqliteSessionStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => SessionStoreService;
|
|
583
|
+
export declare const makeEffectQbSqliteVerificationStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => VerificationStoreService;
|
|
584
|
+
export declare const makeEffectQbSqliteLoginApprovalReviewStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => LoginApprovalReviewStoreService;
|
|
585
|
+
export declare const makeEffectQbSqliteTrustedDeviceStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => TrustedDeviceStoreService;
|
|
586
|
+
export declare const makeEffectQbSqlitePasskeyCredentialStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => PasskeyCredentialStoreService;
|
|
587
|
+
export declare const makeEffectQbSqliteTotpFactorStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => TotpFactorStoreService;
|
|
588
|
+
export declare const makeEffectQbSqliteRecoveryCodeStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => RecoveryCodeStoreService;
|
|
589
|
+
export declare const makeEffectQbSqliteApiKeyStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => ApiKeyStoreService;
|
|
590
|
+
export declare const makeEffectQbSqliteRefreshTokenStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => RefreshTokenStoreService;
|
|
591
|
+
export declare const makeEffectQbSqliteJwtRevocationStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => JwtRevocationStoreService;
|
|
592
|
+
export declare const makeEffectQbSqliteOAuthAccountStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => OAuthAccountStoreService;
|
|
593
|
+
export declare const makeEffectQbSqliteOAuthProviderTokenVault: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => OAuthProviderTokenVaultService;
|
|
594
|
+
export declare const makeEffectQbSqliteSecurityTimelineStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => SecurityTimelineStoreService;
|
|
595
|
+
export declare const makeEffectQbSqliteStorage: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => EffectQbSqliteStorageStores;
|
|
596
|
+
export declare const EffectQbSqliteAuthStorageLive: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => Layer.Layer<ApiKeyStore | UserStore | CredentialStore | SessionStore | VerificationStore | LoginApprovalReviewStore | TrustedDeviceStore | PasskeyCredentialStore | RefreshTokenStore | JwtRevocationStore | OAuthProviderTokenVault | OAuthAccountStore | RecoveryCodeStore | SecurityTimelineStore | TotpFactorStore, never, never>;
|
|
597
|
+
export declare const makeD1EffectQbSqliteExecutor: (database: D1EffectQbDatabaseLike) => EffectQbSqliteExecutor;
|
|
598
|
+
export declare const D1EffectQbSqliteAuthStorageLive: (database: D1EffectQbDatabaseLike, options?: EffectQbSqliteAuthStorageOptions) => Layer.Layer<ApiKeyStore | UserStore | CredentialStore | SessionStore | VerificationStore | LoginApprovalReviewStore | TrustedDeviceStore | PasskeyCredentialStore | RefreshTokenStore | JwtRevocationStore | OAuthProviderTokenVault | OAuthAccountStore | RecoveryCodeStore | SecurityTimelineStore | TotpFactorStore, never, never>;
|
|
599
|
+
export {};
|
|
600
|
+
//# sourceMappingURL=EffectQbSqliteStorage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EffectQbSqliteStorage.d.ts","sourceRoot":"","sources":["../src/EffectQbSqliteStorage.ts"],"names":[],"mappings":"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"}
|