@effect-auth/core 0.1.0-alpha.7 → 0.1.0-alpha.9
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 +12 -52
- package/dist/EffectQbSqliteStorage.d.ts +269 -2
- package/dist/EffectQbSqliteStorage.d.ts.map +1 -1
- package/dist/EffectQbSqliteStorage.js +816 -3
- package/dist/EffectQbSqliteStorage.js.map +1 -1
- package/dist/OAuth.d.ts +55 -0
- package/dist/OAuth.d.ts.map +1 -1
- package/dist/OAuth.js +58 -0
- package/dist/OAuth.js.map +1 -1
- package/dist/StorageMigrations.d.ts +2 -1
- package/dist/StorageMigrations.d.ts.map +1 -1
- package/dist/StorageMigrations.js +24 -0
- package/dist/StorageMigrations.js.map +1 -1
- package/dist/cloudflare/RateLimitDurableObject.d.ts +1 -1
- package/migrations/0012_auth_oauth_provider_token_vault.sql +20 -0
- package/package.json +2 -14
- package/dist/D1Kysely.d.ts +0 -43
- package/dist/D1Kysely.d.ts.map +0 -1
- package/dist/D1Kysely.js +0 -78
- package/dist/D1Kysely.js.map +0 -1
- package/dist/KyselyStorage.d.ts +0 -217
- package/dist/KyselyStorage.d.ts.map +0 -1
- package/dist/KyselyStorage.js +0 -1383
- package/dist/KyselyStorage.js.map +0 -1
package/README.md
CHANGED
|
@@ -231,11 +231,11 @@ import {
|
|
|
231
231
|
Pbkdf2PasswordHasherLive,
|
|
232
232
|
} from "@effect-auth/core/Password";
|
|
233
233
|
import { SessionCookieLive, SessionsLive } from "@effect-auth/core/Sessions";
|
|
234
|
-
import {
|
|
234
|
+
import { EffectQbSqliteAuthStorageLive } from "@effect-auth/core/EffectQbSqliteStorage";
|
|
235
235
|
|
|
236
236
|
const AuthLive = Layer.mergeAll(
|
|
237
237
|
WebCryptoLive(),
|
|
238
|
-
|
|
238
|
+
EffectQbSqliteAuthStorageLive(executor),
|
|
239
239
|
Pbkdf2PasswordHasherLive(),
|
|
240
240
|
SessionsLive({ secret: Redacted.make(env.AUTH_SESSION_SECRET) }),
|
|
241
241
|
SessionCookieLive(),
|
|
@@ -514,7 +514,7 @@ export const createBrowserSession = (userId: UserId) =>
|
|
|
514
514
|
});
|
|
515
515
|
```
|
|
516
516
|
|
|
517
|
-
`SessionClaims` are a safe, transport-visible session summary. They currently include `emailVerified` and `requirements`, and are returned by password auth success, current-session, and refresh HTTP responses when present. Use `Sessions.updateClaims` to update an active session without rotating the opaque session token.
|
|
517
|
+
`SessionClaims` are a safe, transport-visible session summary. They currently include `emailVerified` and `requirements`, and are returned by password auth success, current-session, and refresh HTTP responses when present. Use `Sessions.updateClaims` to update an active session without rotating the opaque session token. Effect-QB storage persists claims in the existing `auth_session.metadata` column, so no additional storage migration is required.
|
|
518
518
|
|
|
519
519
|
Password auth passes the user's email verification state into `AuthFlow`, where `EmailVerificationSessionPolicy` decides whether unverified users get a normal session or a constrained session. The default mode is `allow-unverified` for compatibility. Use `limited-session` to issue sessions with an `email_verification` requirement. Per-login email approval is a separate `UserSecurityPolicy` / `LoginApprovalPolicy` concern, not an email verification session mode.
|
|
520
520
|
|
|
@@ -619,7 +619,7 @@ export const AppLoginApprovalLive = Layer.mergeAll(
|
|
|
619
619
|
|
|
620
620
|
The default preset policy is `mode: "never"`. Passkeys or other high-assurance methods can bypass preset approval with `skipMethods` or `skipWhenAalAtLeast`. Approval `channel` and `reason` are open strings, so apps can model `admin`, `sms`, `push`, `manual-review`, or risk-specific reasons without extending core. `LoginApprovalDecision.emailCode`, `emailLink`, `sms`, `adminReview`, and `custom` set semantic `sessionBinding`; `sameDeviceRequired` remains available as the low-level legacy flag. `adminReview` uses `sessionBinding: "none"`, `LoginApprovalReview.approve` / `deny` record the out-of-band decision, and `LoginApprovalFinalize.complete` creates the session only for the originating device. Email is required only for the built-in email delivery path; non-email channels can omit it and use a custom `LoginApprovalDelivery`. `AuthFlow` always supplies policy with typed `device` and `risk`; the default risk engine returns `LoginRiskContext.make({ level: "unknown", signals: [] })`, and apps can provide `LoginRiskEngine` to calculate impossible travel, IP reputation, tenant policy, or other risk signals. `LoginRiskContext` and `LoginRiskSignal` are `Schema.Class` values, so custom engines should return `LoginRiskContext.make(...)`; policies can use helpers such as `input.risk.hasSignal(...)`, `input.risk.getSignal(...)`, and `input.risk.isAtLeast(...)`. `LoginRiskEngine` receives request context only when the primary-factor integration supplies it; core does not trust proxy or geo headers by default.
|
|
621
621
|
|
|
622
|
-
`LoginApproval.inspect` validates a login approval challenge without consuming it. Use it for GET preview pages or admin panels that need to display pending approval details. For admin, push, or Slack approvals, configure `LoginApprovalReview` with a persistent store, let the out-of-band actor call `approve` or `deny`, then have the user's original browser poll review status and call `LoginApprovalFinalize.complete` with its pending-cookie secret. The built-in HTTP API exposes this originating-browser path as `POST /auth/login-approval/status` and `POST /auth/login-approval/finalize`, also available as `client.loginApproval.status(...)` and `client.loginApproval.finalize(...)`. `
|
|
622
|
+
`LoginApproval.inspect` validates a login approval challenge without consuming it. Use it for GET preview pages or admin panels that need to display pending approval details. For admin, push, or Slack approvals, configure `LoginApprovalReview` with a persistent store, let the out-of-band actor call `approve` or `deny`, then have the user's original browser poll review status and call `LoginApprovalFinalize.complete` with its pending-cookie secret. The built-in HTTP API exposes this originating-browser path as `POST /auth/login-approval/status` and `POST /auth/login-approval/finalize`, also available as `client.loginApproval.status(...)` and `client.loginApproval.finalize(...)`. `EffectQbSqliteAuthStorageLive` provides durable `LoginApprovalReviewStore`; the included `LoginApprovalReviewStoreMemoryLive` is for tests and local composition.
|
|
623
623
|
|
|
624
624
|
`AuthFlowState` stores a short-lived, single-use pending primary-factor result in the existing challenge store. It is the bridge between “password/passkey/OTP verified” and “approval/MFA completed, now create a session”. The stored state contains `userId`, `method`, `amr`, `aal`, optional session claims, and app metadata such as `redirectTo`.
|
|
625
625
|
|
|
@@ -648,7 +648,7 @@ export const AppTrustedDeviceLive = Layer.mergeAll(
|
|
|
648
648
|
);
|
|
649
649
|
```
|
|
650
650
|
|
|
651
|
-
The built-in password sign-in, email OTP verify, and magic-link verify HTTP handlers read the HttpOnly `__Host-auth-device` cookie when `TrustedDeviceCookie` is provided and pass the trusted-device token into `AuthFlow`; `AuthFlow` resolves the device status centrally with `TrustedDevice`. `POST /auth/login-approval/approve` accepts `rememberDevice: true`; when `TrustedDevice` and `TrustedDeviceCookie` are provided it trusts the approved user/device and sets `__Host-auth-device` with the final session response. `
|
|
651
|
+
The built-in password sign-in, email OTP verify, and magic-link verify HTTP handlers read the HttpOnly `__Host-auth-device` cookie when `TrustedDeviceCookie` is provided and pass the trusted-device token into `AuthFlow`; `AuthFlow` resolves the device status centrally with `TrustedDevice`. `POST /auth/login-approval/approve` accepts `rememberDevice: true`; when `TrustedDevice` and `TrustedDeviceCookie` are provided it trusts the approved user/device and sets `__Host-auth-device` with the final session response. `EffectQbSqliteAuthStorageLive` provides durable `TrustedDeviceStore`; the in-memory store is intended for tests and local composition.
|
|
652
652
|
|
|
653
653
|
## Challenge
|
|
654
654
|
|
|
@@ -724,7 +724,7 @@ export const verifyEmail = (challengeId: ChallengeId, code: string) =>
|
|
|
724
724
|
|
|
725
725
|
## Storage
|
|
726
726
|
|
|
727
|
-
Storage is exposed as ORM-free ports. Core flows depend on store services, while
|
|
727
|
+
Storage is exposed as ORM-free ports. Core flows depend on store services, while Effect-QB, future Drizzle, or app-owned adapters provide the implementations.
|
|
728
728
|
|
|
729
729
|
```ts
|
|
730
730
|
import { Effect, Option } from "effect";
|
|
@@ -764,55 +764,13 @@ const VerificationStoreLive = VerificationStore.make({
|
|
|
764
764
|
});
|
|
765
765
|
```
|
|
766
766
|
|
|
767
|
-
The
|
|
768
|
-
|
|
769
|
-
```ts
|
|
770
|
-
import { makeKyselyStorage } from "@effect-auth/core/KyselyStorage";
|
|
771
|
-
|
|
772
|
-
const {
|
|
773
|
-
userStore,
|
|
774
|
-
credentialStore,
|
|
775
|
-
sessionStore,
|
|
776
|
-
verificationStore,
|
|
777
|
-
loginApprovalReviewStore,
|
|
778
|
-
trustedDeviceStore,
|
|
779
|
-
} = makeKyselyStorage(db);
|
|
780
|
-
```
|
|
781
|
-
|
|
782
|
-
For Cloudflare D1, use the first-party Kysely dialect instead of an external D1 dialect package:
|
|
783
|
-
|
|
784
|
-
```ts
|
|
785
|
-
import { makeD1Kysely } from "@effect-auth/core/D1Kysely";
|
|
786
|
-
import {
|
|
787
|
-
KyselyAuthStorageLive,
|
|
788
|
-
type KyselyAuthDatabase,
|
|
789
|
-
} from "@effect-auth/core/KyselyStorage";
|
|
790
|
-
|
|
791
|
-
interface DB extends KyselyAuthDatabase {
|
|
792
|
-
// app tables live here too
|
|
793
|
-
}
|
|
794
|
-
|
|
795
|
-
const db = makeD1Kysely<DB>(env.DB);
|
|
796
|
-
const StorageLive = KyselyAuthStorageLive(db);
|
|
797
|
-
```
|
|
798
|
-
|
|
799
|
-
The default schema expects `auth_user`, `auth_credential`, `auth_session`, `auth_verification`, `auth_login_approval_review`, `auth_trusted_device`, and `auth_passkey_credential` tables in the Kysely database type:
|
|
800
|
-
|
|
801
|
-
```ts
|
|
802
|
-
import type { KyselyAuthDatabase } from "@effect-auth/core/KyselyStorage";
|
|
803
|
-
|
|
804
|
-
interface DB extends KyselyAuthDatabase {
|
|
805
|
-
// app tables live here too
|
|
806
|
-
}
|
|
807
|
-
```
|
|
808
|
-
|
|
809
|
-
The default schema is also exported as SQL and as package assets:
|
|
767
|
+
The default schema is exported as SQL and as package assets:
|
|
810
768
|
|
|
811
769
|
```ts
|
|
812
770
|
import { authStorageMigrations } from "@effect-auth/core/StorageMigrations";
|
|
813
771
|
```
|
|
814
772
|
|
|
815
|
-
Effect-
|
|
773
|
+
Effect-QB SQLite/D1 storage is the first-party durable adapter. The default path uses the auth schema and requires no table mapping:
|
|
816
774
|
|
|
817
775
|
```ts
|
|
818
776
|
import { EffectQbSqliteAuthStorageLive } from "@effect-auth/core/EffectQbSqliteStorage";
|
|
@@ -820,6 +778,8 @@ import { EffectQbSqliteAuthStorageLive } from "@effect-auth/core/EffectQbSqliteS
|
|
|
820
778
|
const StorageLive = EffectQbSqliteAuthStorageLive(executor);
|
|
821
779
|
```
|
|
822
780
|
|
|
781
|
+
`EffectQbSqliteAuthStorageLive` provides all durable auth stores in the default schema, including the OAuth provider-token vault for already-encrypted provider token ciphertexts. Apps still own provider-token encryption and KMS/secrets-service policy before values reach storage.
|
|
782
|
+
|
|
823
783
|
For Cloudflare D1, create an effect-qb SQLite executor from the D1 binding:
|
|
824
784
|
|
|
825
785
|
```ts
|
|
@@ -832,7 +792,7 @@ const executor = makeD1EffectQbSqliteExecutor(env.DB);
|
|
|
832
792
|
const StorageLive = EffectQbSqliteAuthStorageLive(executor);
|
|
833
793
|
```
|
|
834
794
|
|
|
835
|
-
Applications with their own
|
|
795
|
+
Applications with their own Effect-QB tables can map semantic auth fields to app-owned columns with `defineEffectQbAuthTables`:
|
|
836
796
|
|
|
837
797
|
```ts
|
|
838
798
|
import { Column, Query, Table } from "effect-qb/sqlite";
|
|
@@ -882,7 +842,7 @@ const authTables = defineEffectQbAuthTables({
|
|
|
882
842
|
}) satisfies Query.MutationInputOf<Table.UpdateOf<typeof users>>,
|
|
883
843
|
},
|
|
884
844
|
|
|
885
|
-
// credential/session/verification/review/trusted-device mappings follow the same pattern.
|
|
845
|
+
// credential/session/verification/review/trusted-device/passkey/TOTP/recovery-code/API-key/refresh-token/OAuth-account/provider-token-vault mappings follow the same pattern.
|
|
886
846
|
});
|
|
887
847
|
|
|
888
848
|
const StorageLive = EffectQbSqliteAuthStorageLive(executor, {
|
|
@@ -1,13 +1,25 @@
|
|
|
1
1
|
import { Layer } from "effect";
|
|
2
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";
|
|
3
5
|
import { UnixMillis } from "./Identifiers.js";
|
|
4
6
|
import { JwtRevocationStore } from "./Jwt.js";
|
|
5
7
|
import type { JwtRevocationRecord, JwtRevocationStoreService } from "./Jwt.js";
|
|
6
8
|
import { LoginApprovalReviewStore } from "./LoginApproval.js";
|
|
7
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";
|
|
8
18
|
import type { AuthMethodReference } from "./Sessions.js";
|
|
9
19
|
import { CredentialStore, SessionStore, UserStore, VerificationStore } from "./Storage.js";
|
|
10
20
|
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";
|
|
21
|
+
import { TotpFactorStore } from "./Totp.js";
|
|
22
|
+
import type { TotpFactorConfirmInput, TotpFactorMarkUsedInput, TotpFactorRecord, TotpFactorRevokeInput, TotpFactorStoreService } from "./Totp.js";
|
|
11
23
|
import { TrustedDeviceStore } from "./TrustedDevice.js";
|
|
12
24
|
import type { TrustedDeviceRecord, TrustedDeviceStoreService, TrustedDeviceStoreUpsertInput } from "./TrustedDevice.js";
|
|
13
25
|
export interface D1EffectQbResult<Row extends Readonly<Record<string, unknown>> = Readonly<Record<string, unknown>>> {
|
|
@@ -100,12 +112,100 @@ export interface EffectQbAuthTrustedDeviceSelectedRow {
|
|
|
100
112
|
readonly expiresAt: number;
|
|
101
113
|
readonly metadata: unknown;
|
|
102
114
|
}
|
|
115
|
+
export interface EffectQbAuthPasskeyCredentialSelectedRow {
|
|
116
|
+
readonly id: string;
|
|
117
|
+
readonly userId: string;
|
|
118
|
+
readonly credentialId: string;
|
|
119
|
+
readonly publicKey: string;
|
|
120
|
+
readonly signCount: number;
|
|
121
|
+
readonly transports: unknown;
|
|
122
|
+
readonly backedUp: boolean | number | string | null;
|
|
123
|
+
readonly createdAt: number;
|
|
124
|
+
readonly lastUsedAt: number | null;
|
|
125
|
+
readonly revokedAt: number | null;
|
|
126
|
+
readonly metadata: unknown;
|
|
127
|
+
}
|
|
128
|
+
export interface EffectQbAuthTotpFactorSelectedRow {
|
|
129
|
+
readonly id: string;
|
|
130
|
+
readonly userId: string;
|
|
131
|
+
readonly secret: string;
|
|
132
|
+
readonly algorithm: string;
|
|
133
|
+
readonly digits: number;
|
|
134
|
+
readonly period: number;
|
|
135
|
+
readonly createdAt: number;
|
|
136
|
+
readonly confirmedAt: number | null;
|
|
137
|
+
readonly lastUsedAt: number | null;
|
|
138
|
+
readonly revokedAt: number | null;
|
|
139
|
+
readonly metadata: unknown;
|
|
140
|
+
}
|
|
141
|
+
export interface EffectQbAuthRecoveryCodeSelectedRow {
|
|
142
|
+
readonly id: string;
|
|
143
|
+
readonly userId: string;
|
|
144
|
+
readonly codeHash: string;
|
|
145
|
+
readonly createdAt: number;
|
|
146
|
+
readonly usedAt: number | null;
|
|
147
|
+
readonly revokedAt: number | null;
|
|
148
|
+
readonly metadata: unknown;
|
|
149
|
+
}
|
|
150
|
+
export interface EffectQbAuthApiKeySelectedRow {
|
|
151
|
+
readonly id: string;
|
|
152
|
+
readonly userId: string;
|
|
153
|
+
readonly prefix: string;
|
|
154
|
+
readonly secretHash: string;
|
|
155
|
+
readonly scopes: unknown;
|
|
156
|
+
readonly createdAt: number;
|
|
157
|
+
readonly expiresAt: number | null;
|
|
158
|
+
readonly lastUsedAt: number | null;
|
|
159
|
+
readonly revokedAt: number | null;
|
|
160
|
+
readonly metadata: unknown;
|
|
161
|
+
}
|
|
162
|
+
export interface EffectQbAuthRefreshTokenSelectedRow {
|
|
163
|
+
readonly id: string;
|
|
164
|
+
readonly familyId: string;
|
|
165
|
+
readonly userId: string;
|
|
166
|
+
readonly secretHash: string;
|
|
167
|
+
readonly createdAt: number;
|
|
168
|
+
readonly expiresAt: number;
|
|
169
|
+
readonly lastUsedAt: number | null;
|
|
170
|
+
readonly rotatedAt: number | null;
|
|
171
|
+
readonly replacedById: string | null;
|
|
172
|
+
readonly revokedAt: number | null;
|
|
173
|
+
readonly reuseDetectedAt: number | null;
|
|
174
|
+
readonly metadata: unknown;
|
|
175
|
+
}
|
|
103
176
|
export interface EffectQbAuthJwtRevocationSelectedRow {
|
|
104
177
|
readonly jwtId: string;
|
|
105
178
|
readonly revokedAt: number;
|
|
106
179
|
readonly expiresAt: number | null;
|
|
107
180
|
readonly reason: string | null;
|
|
108
181
|
}
|
|
182
|
+
export interface EffectQbAuthOAuthAccountSelectedRow {
|
|
183
|
+
readonly id: string;
|
|
184
|
+
readonly providerId: string;
|
|
185
|
+
readonly providerAccountId: string;
|
|
186
|
+
readonly userId: string;
|
|
187
|
+
readonly email: string | null;
|
|
188
|
+
readonly emailVerified: boolean | number | string | null;
|
|
189
|
+
readonly createdAt: number;
|
|
190
|
+
readonly updatedAt: number;
|
|
191
|
+
readonly unlinkedAt: number | null;
|
|
192
|
+
readonly metadata: unknown;
|
|
193
|
+
}
|
|
194
|
+
export interface EffectQbAuthOAuthProviderTokenVaultSelectedRow {
|
|
195
|
+
readonly accountId: string;
|
|
196
|
+
readonly userId: string;
|
|
197
|
+
readonly providerId: string;
|
|
198
|
+
readonly providerAccountId: string;
|
|
199
|
+
readonly accessTokenCiphertext: string;
|
|
200
|
+
readonly refreshTokenCiphertext: string | null;
|
|
201
|
+
readonly idTokenCiphertext: string | null;
|
|
202
|
+
readonly tokenType: string;
|
|
203
|
+
readonly scopes: unknown;
|
|
204
|
+
readonly expiresAt: number | null;
|
|
205
|
+
readonly updatedAt: number;
|
|
206
|
+
readonly revokedAt: number | null;
|
|
207
|
+
readonly revocationReason: string | null;
|
|
208
|
+
}
|
|
109
209
|
declare const authSqliteTablesTypeId: unique symbol;
|
|
110
210
|
export interface AuthSqliteTableNames {
|
|
111
211
|
readonly user?: string;
|
|
@@ -114,7 +214,14 @@ export interface AuthSqliteTableNames {
|
|
|
114
214
|
readonly verification?: string;
|
|
115
215
|
readonly loginApprovalReview?: string;
|
|
116
216
|
readonly trustedDevice?: string;
|
|
217
|
+
readonly passkeyCredential?: string;
|
|
218
|
+
readonly totpFactor?: string;
|
|
219
|
+
readonly recoveryCode?: string;
|
|
220
|
+
readonly apiKey?: string;
|
|
221
|
+
readonly refreshToken?: string;
|
|
117
222
|
readonly jwtRevocation?: string;
|
|
223
|
+
readonly oauthAccount?: string;
|
|
224
|
+
readonly oauthProviderTokenVault?: string;
|
|
118
225
|
}
|
|
119
226
|
type EffectQbSqliteTable = Table.AnyTable;
|
|
120
227
|
type EffectQbInsertInput<TableValue extends EffectQbSqliteTable> = Query.MutationInputOf<Table.InsertOf<TableValue>>;
|
|
@@ -243,6 +350,105 @@ export interface EffectQbAuthTrustedDeviceTable<TableValue extends EffectQbSqlit
|
|
|
243
350
|
readonly update: (input: TrustedDeviceStoreUpsertInput, existing: TrustedDeviceRecord) => EffectQbUpdateInput<TableValue>;
|
|
244
351
|
readonly decode?: (row: EffectQbAuthTrustedDeviceSelectedRow) => TrustedDeviceRecord;
|
|
245
352
|
}
|
|
353
|
+
export interface EffectQbAuthPasskeyCredentialTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
354
|
+
readonly table: TableValue;
|
|
355
|
+
readonly select: EffectQbSelection & {
|
|
356
|
+
readonly id: EffectQbSqliteExpression;
|
|
357
|
+
readonly userId: EffectQbSqliteExpression;
|
|
358
|
+
readonly credentialId: EffectQbSqliteExpression;
|
|
359
|
+
readonly publicKey: EffectQbSqliteExpression;
|
|
360
|
+
readonly signCount: EffectQbSqliteExpression;
|
|
361
|
+
readonly transports: EffectQbSqliteExpression;
|
|
362
|
+
readonly backedUp: EffectQbSqliteExpression;
|
|
363
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
364
|
+
readonly lastUsedAt: EffectQbSqliteExpression;
|
|
365
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
366
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
367
|
+
};
|
|
368
|
+
readonly insert: (row: PasskeyCredentialRecord) => EffectQbInsertInput<TableValue>;
|
|
369
|
+
readonly updateSignCount: (input: PasskeyCredentialUpdateSignCountInput) => EffectQbUpdateInput<TableValue>;
|
|
370
|
+
readonly revoke: (input: PasskeyCredentialRevokeInput, row: PasskeyCredentialRecord) => EffectQbUpdateInput<TableValue>;
|
|
371
|
+
readonly decode?: (row: EffectQbAuthPasskeyCredentialSelectedRow) => PasskeyCredentialRecord;
|
|
372
|
+
}
|
|
373
|
+
export interface EffectQbAuthTotpFactorTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
374
|
+
readonly table: TableValue;
|
|
375
|
+
readonly select: EffectQbSelection & {
|
|
376
|
+
readonly id: EffectQbSqliteExpression;
|
|
377
|
+
readonly userId: EffectQbSqliteExpression;
|
|
378
|
+
readonly secret: EffectQbSqliteExpression;
|
|
379
|
+
readonly algorithm: EffectQbSqliteExpression;
|
|
380
|
+
readonly digits: EffectQbSqliteExpression;
|
|
381
|
+
readonly period: EffectQbSqliteExpression;
|
|
382
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
383
|
+
readonly confirmedAt: EffectQbSqliteExpression;
|
|
384
|
+
readonly lastUsedAt: EffectQbSqliteExpression;
|
|
385
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
386
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
387
|
+
};
|
|
388
|
+
readonly insert: (row: TotpFactorRecord) => EffectQbInsertInput<TableValue>;
|
|
389
|
+
readonly confirm: (input: TotpFactorConfirmInput) => EffectQbUpdateInput<TableValue>;
|
|
390
|
+
readonly markUsed: (input: TotpFactorMarkUsedInput) => EffectQbUpdateInput<TableValue>;
|
|
391
|
+
readonly revoke: (input: TotpFactorRevokeInput, row: TotpFactorRecord) => EffectQbUpdateInput<TableValue>;
|
|
392
|
+
readonly decode?: (row: EffectQbAuthTotpFactorSelectedRow) => TotpFactorRecord;
|
|
393
|
+
}
|
|
394
|
+
export interface EffectQbAuthRecoveryCodeTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
395
|
+
readonly table: TableValue;
|
|
396
|
+
readonly select: EffectQbSelection & {
|
|
397
|
+
readonly id: EffectQbSqliteExpression;
|
|
398
|
+
readonly userId: EffectQbSqliteExpression;
|
|
399
|
+
readonly codeHash: EffectQbSqliteExpression;
|
|
400
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
401
|
+
readonly usedAt: EffectQbSqliteExpression;
|
|
402
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
403
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
404
|
+
};
|
|
405
|
+
readonly insert: (row: RecoveryCodeRecord) => EffectQbInsertInput<TableValue>;
|
|
406
|
+
readonly markUsed: (input: RecoveryCodeMarkUsedInput) => EffectQbUpdateInput<TableValue>;
|
|
407
|
+
readonly revoke: (input: RecoveryCodeRevokeInput, row: RecoveryCodeRecord) => EffectQbUpdateInput<TableValue>;
|
|
408
|
+
readonly decode?: (row: EffectQbAuthRecoveryCodeSelectedRow) => RecoveryCodeRecord;
|
|
409
|
+
}
|
|
410
|
+
export interface EffectQbAuthApiKeyTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
411
|
+
readonly table: TableValue;
|
|
412
|
+
readonly select: EffectQbSelection & {
|
|
413
|
+
readonly id: EffectQbSqliteExpression;
|
|
414
|
+
readonly userId: EffectQbSqliteExpression;
|
|
415
|
+
readonly prefix: EffectQbSqliteExpression;
|
|
416
|
+
readonly secretHash: EffectQbSqliteExpression;
|
|
417
|
+
readonly scopes: EffectQbSqliteExpression;
|
|
418
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
419
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
420
|
+
readonly lastUsedAt: EffectQbSqliteExpression;
|
|
421
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
422
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
423
|
+
};
|
|
424
|
+
readonly insert: (row: ApiKeyRecord) => EffectQbInsertInput<TableValue>;
|
|
425
|
+
readonly markUsed: (input: ApiKeyMarkUsedInput) => EffectQbUpdateInput<TableValue>;
|
|
426
|
+
readonly revoke: (input: ApiKeyRevokeInput, row: ApiKeyRecord) => EffectQbUpdateInput<TableValue>;
|
|
427
|
+
readonly decode?: (row: EffectQbAuthApiKeySelectedRow) => ApiKeyRecord;
|
|
428
|
+
}
|
|
429
|
+
export interface EffectQbAuthRefreshTokenTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
430
|
+
readonly table: TableValue;
|
|
431
|
+
readonly select: EffectQbSelection & {
|
|
432
|
+
readonly id: EffectQbSqliteExpression;
|
|
433
|
+
readonly familyId: EffectQbSqliteExpression;
|
|
434
|
+
readonly userId: EffectQbSqliteExpression;
|
|
435
|
+
readonly secretHash: EffectQbSqliteExpression;
|
|
436
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
437
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
438
|
+
readonly lastUsedAt: EffectQbSqliteExpression;
|
|
439
|
+
readonly rotatedAt: EffectQbSqliteExpression;
|
|
440
|
+
readonly replacedById: EffectQbSqliteExpression;
|
|
441
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
442
|
+
readonly reuseDetectedAt: EffectQbSqliteExpression;
|
|
443
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
444
|
+
};
|
|
445
|
+
readonly insert: (row: RefreshTokenRecord) => EffectQbInsertInput<TableValue>;
|
|
446
|
+
readonly rotate: (input: RefreshTokenRotateStoreInput) => EffectQbUpdateInput<TableValue>;
|
|
447
|
+
readonly markReuseDetected: (input: RefreshTokenMarkReuseDetectedInput) => EffectQbUpdateInput<TableValue>;
|
|
448
|
+
readonly revoke: (input: RefreshTokenRevokeInput, row: RefreshTokenRecord) => EffectQbUpdateInput<TableValue>;
|
|
449
|
+
readonly revokeFamily: (input: RefreshTokenRevokeFamilyInput, row: RefreshTokenRecord) => EffectQbUpdateInput<TableValue>;
|
|
450
|
+
readonly decode?: (row: EffectQbAuthRefreshTokenSelectedRow) => RefreshTokenRecord;
|
|
451
|
+
}
|
|
246
452
|
export interface EffectQbAuthJwtRevocationTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
247
453
|
readonly table: TableValue;
|
|
248
454
|
readonly select: EffectQbSelection & {
|
|
@@ -255,6 +461,46 @@ export interface EffectQbAuthJwtRevocationTable<TableValue extends EffectQbSqlit
|
|
|
255
461
|
readonly update: (record: JwtRevocationRecord) => EffectQbUpdateInput<TableValue>;
|
|
256
462
|
readonly decode?: (row: EffectQbAuthJwtRevocationSelectedRow) => JwtRevocationRecord;
|
|
257
463
|
}
|
|
464
|
+
export interface EffectQbAuthOAuthAccountTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
465
|
+
readonly table: TableValue;
|
|
466
|
+
readonly select: EffectQbSelection & {
|
|
467
|
+
readonly id: EffectQbSqliteExpression;
|
|
468
|
+
readonly providerId: EffectQbSqliteExpression;
|
|
469
|
+
readonly providerAccountId: EffectQbSqliteExpression;
|
|
470
|
+
readonly userId: EffectQbSqliteExpression;
|
|
471
|
+
readonly email: EffectQbSqliteExpression;
|
|
472
|
+
readonly emailVerified: EffectQbSqliteExpression;
|
|
473
|
+
readonly createdAt: EffectQbSqliteExpression;
|
|
474
|
+
readonly updatedAt: EffectQbSqliteExpression;
|
|
475
|
+
readonly unlinkedAt: EffectQbSqliteExpression;
|
|
476
|
+
readonly metadata: EffectQbSqliteExpression;
|
|
477
|
+
};
|
|
478
|
+
readonly insert: (row: OAuthAccountRecord) => EffectQbInsertInput<TableValue>;
|
|
479
|
+
readonly unlink: (input: OAuthAccountUnlinkInput, row: OAuthAccountRecord) => EffectQbUpdateInput<TableValue>;
|
|
480
|
+
readonly decode?: (row: EffectQbAuthOAuthAccountSelectedRow) => OAuthAccountRecord;
|
|
481
|
+
}
|
|
482
|
+
export interface EffectQbAuthOAuthProviderTokenVaultTable<TableValue extends EffectQbSqliteTable = EffectQbSqliteTable> {
|
|
483
|
+
readonly table: TableValue;
|
|
484
|
+
readonly select: EffectQbSelection & {
|
|
485
|
+
readonly accountId: EffectQbSqliteExpression;
|
|
486
|
+
readonly userId: EffectQbSqliteExpression;
|
|
487
|
+
readonly providerId: EffectQbSqliteExpression;
|
|
488
|
+
readonly providerAccountId: EffectQbSqliteExpression;
|
|
489
|
+
readonly accessTokenCiphertext: EffectQbSqliteExpression;
|
|
490
|
+
readonly refreshTokenCiphertext: EffectQbSqliteExpression;
|
|
491
|
+
readonly idTokenCiphertext: EffectQbSqliteExpression;
|
|
492
|
+
readonly tokenType: EffectQbSqliteExpression;
|
|
493
|
+
readonly scopes: EffectQbSqliteExpression;
|
|
494
|
+
readonly expiresAt: EffectQbSqliteExpression;
|
|
495
|
+
readonly updatedAt: EffectQbSqliteExpression;
|
|
496
|
+
readonly revokedAt: EffectQbSqliteExpression;
|
|
497
|
+
readonly revocationReason: EffectQbSqliteExpression;
|
|
498
|
+
};
|
|
499
|
+
readonly insert: (row: OAuthProviderTokenVaultRecord) => EffectQbInsertInput<TableValue>;
|
|
500
|
+
readonly update: (row: OAuthProviderTokenVaultRecord) => EffectQbUpdateInput<TableValue>;
|
|
501
|
+
readonly markRevoked: (input: OAuthProviderTokenVaultMarkRevokedInput) => EffectQbUpdateInput<TableValue>;
|
|
502
|
+
readonly decode?: (row: EffectQbAuthOAuthProviderTokenVaultSelectedRow) => OAuthProviderTokenVaultRecord;
|
|
503
|
+
}
|
|
258
504
|
export interface EffectQbAuthTablesInput {
|
|
259
505
|
readonly user: EffectQbAuthUserTable;
|
|
260
506
|
readonly credential: EffectQbAuthCredentialTable;
|
|
@@ -262,7 +508,14 @@ export interface EffectQbAuthTablesInput {
|
|
|
262
508
|
readonly verification: EffectQbAuthVerificationTable;
|
|
263
509
|
readonly loginApprovalReview: EffectQbAuthLoginApprovalReviewTable;
|
|
264
510
|
readonly trustedDevice: EffectQbAuthTrustedDeviceTable;
|
|
511
|
+
readonly passkeyCredential: EffectQbAuthPasskeyCredentialTable;
|
|
512
|
+
readonly totpFactor: EffectQbAuthTotpFactorTable;
|
|
513
|
+
readonly recoveryCode: EffectQbAuthRecoveryCodeTable;
|
|
514
|
+
readonly apiKey: EffectQbAuthApiKeyTable;
|
|
515
|
+
readonly refreshToken: EffectQbAuthRefreshTokenTable;
|
|
265
516
|
readonly jwtRevocation: EffectQbAuthJwtRevocationTable;
|
|
517
|
+
readonly oauthAccount: EffectQbAuthOAuthAccountTable;
|
|
518
|
+
readonly oauthProviderTokenVault: EffectQbAuthOAuthProviderTokenVaultTable;
|
|
266
519
|
}
|
|
267
520
|
export interface AuthSqliteTables extends EffectQbAuthTablesInput {
|
|
268
521
|
readonly [authSqliteTablesTypeId]: typeof authSqliteTablesTypeId;
|
|
@@ -277,7 +530,14 @@ export interface EffectQbSqliteStorageStores {
|
|
|
277
530
|
readonly verificationStore: VerificationStoreService;
|
|
278
531
|
readonly loginApprovalReviewStore: LoginApprovalReviewStoreService;
|
|
279
532
|
readonly trustedDeviceStore: TrustedDeviceStoreService;
|
|
533
|
+
readonly passkeyCredentialStore: PasskeyCredentialStoreService;
|
|
534
|
+
readonly totpFactorStore: TotpFactorStoreService;
|
|
535
|
+
readonly recoveryCodeStore: RecoveryCodeStoreService;
|
|
536
|
+
readonly apiKeyStore: ApiKeyStoreService;
|
|
537
|
+
readonly refreshTokenStore: RefreshTokenStoreService;
|
|
280
538
|
readonly jwtRevocationStore: JwtRevocationStoreService;
|
|
539
|
+
readonly oauthAccountStore: OAuthAccountStoreService;
|
|
540
|
+
readonly oauthProviderTokenVault: OAuthProviderTokenVaultService;
|
|
281
541
|
}
|
|
282
542
|
type EffectQbSqliteExecutor = Executor.QueryExecutor<never>;
|
|
283
543
|
export declare const defineEffectQbAuthTables: <const Tables extends EffectQbAuthTablesInput>(tables: Tables) => AuthSqliteTables & Tables;
|
|
@@ -289,10 +549,17 @@ export declare const makeEffectQbSqliteSessionStore: (executor: EffectQbSqliteEx
|
|
|
289
549
|
export declare const makeEffectQbSqliteVerificationStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => VerificationStoreService;
|
|
290
550
|
export declare const makeEffectQbSqliteLoginApprovalReviewStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => LoginApprovalReviewStoreService;
|
|
291
551
|
export declare const makeEffectQbSqliteTrustedDeviceStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => TrustedDeviceStoreService;
|
|
552
|
+
export declare const makeEffectQbSqlitePasskeyCredentialStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => PasskeyCredentialStoreService;
|
|
553
|
+
export declare const makeEffectQbSqliteTotpFactorStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => TotpFactorStoreService;
|
|
554
|
+
export declare const makeEffectQbSqliteRecoveryCodeStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => RecoveryCodeStoreService;
|
|
555
|
+
export declare const makeEffectQbSqliteApiKeyStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => ApiKeyStoreService;
|
|
556
|
+
export declare const makeEffectQbSqliteRefreshTokenStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => RefreshTokenStoreService;
|
|
292
557
|
export declare const makeEffectQbSqliteJwtRevocationStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => JwtRevocationStoreService;
|
|
558
|
+
export declare const makeEffectQbSqliteOAuthAccountStore: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => OAuthAccountStoreService;
|
|
559
|
+
export declare const makeEffectQbSqliteOAuthProviderTokenVault: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => OAuthProviderTokenVaultService;
|
|
293
560
|
export declare const makeEffectQbSqliteStorage: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => EffectQbSqliteStorageStores;
|
|
294
|
-
export declare const EffectQbSqliteAuthStorageLive: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => Layer.Layer<UserStore | CredentialStore | SessionStore | VerificationStore | LoginApprovalReviewStore | TrustedDeviceStore | JwtRevocationStore, never, never>;
|
|
561
|
+
export declare const EffectQbSqliteAuthStorageLive: (executor: EffectQbSqliteExecutor, options?: EffectQbSqliteAuthStorageOptions) => Layer.Layer<ApiKeyStore | UserStore | CredentialStore | SessionStore | VerificationStore | LoginApprovalReviewStore | TrustedDeviceStore | PasskeyCredentialStore | RefreshTokenStore | JwtRevocationStore | OAuthProviderTokenVault | OAuthAccountStore | RecoveryCodeStore | TotpFactorStore, never, never>;
|
|
295
562
|
export declare const makeD1EffectQbSqliteExecutor: (database: D1EffectQbDatabaseLike) => EffectQbSqliteExecutor;
|
|
296
|
-
export declare const D1EffectQbSqliteAuthStorageLive: (database: D1EffectQbDatabaseLike, options?: EffectQbSqliteAuthStorageOptions) => Layer.Layer<UserStore | CredentialStore | SessionStore | VerificationStore | LoginApprovalReviewStore | TrustedDeviceStore | JwtRevocationStore, never, never>;
|
|
563
|
+
export declare const D1EffectQbSqliteAuthStorageLive: (database: D1EffectQbDatabaseLike, options?: EffectQbSqliteAuthStorageOptions) => Layer.Layer<ApiKeyStore | UserStore | CredentialStore | SessionStore | VerificationStore | LoginApprovalReviewStore | TrustedDeviceStore | PasskeyCredentialStore | RefreshTokenStore | JwtRevocationStore | OAuthProviderTokenVault | OAuthAccountStore | RecoveryCodeStore | TotpFactorStore, never, never>;
|
|
297
564
|
export {};
|
|
298
565
|
//# sourceMappingURL=EffectQbSqliteStorage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EffectQbSqliteStorage.d.ts","sourceRoot":"","sources":["../src/EffectQbSqliteStorage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EffectQbSqliteStorage.d.ts","sourceRoot":"","sources":["../src/EffectQbSqliteStorage.ts"],"names":[],"mappings":"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"}
|