@lessly/sdk-app 99.6.0 → 99.8.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.
@@ -111756,6 +111756,332 @@ export interface OrganizationYoutubeInstallInput {
111756
111756
  export interface OrganizationYoutubeInstallOutput {
111757
111757
  url: string;
111758
111758
  }
111759
+ export interface PlaygroundAnalyticsOverviewInput {
111760
+ /**
111761
+ * Max records per entity in recent[]; omit for the endpoint default
111762
+ */
111763
+ limit?: number;
111764
+ }
111765
+ export interface PlaygroundAnalyticsOverviewOutput {
111766
+ ok: boolean;
111767
+ minted: boolean;
111768
+ overview?: unknown;
111769
+ http_status: number;
111770
+ }
111771
+ export interface PlaygroundBillingEntitlementsInput {
111772
+ }
111773
+ export interface PlaygroundBillingEntitlementsOutput {
111774
+ ok: boolean;
111775
+ minted: boolean;
111776
+ http_status: number;
111777
+ entitlements?: unknown;
111778
+ }
111779
+ export interface PlaygroundBillingRecordUsageInput {
111780
+ /**
111781
+ * Quantity of events to record against playground-events (SUM); defaults to 1
111782
+ */
111783
+ value?: number;
111784
+ }
111785
+ export interface PlaygroundBillingRecordUsageOutput {
111786
+ minted: boolean;
111787
+ accepted: (number | null);
111788
+ recorded: boolean;
111789
+ duplicates: (number | null);
111790
+ http_status: number;
111791
+ }
111792
+ export interface PlaygroundClickupCreateTaskInput {
111793
+ /**
111794
+ * Task title; defaults to a fixture label
111795
+ */
111796
+ name?: string;
111797
+ /**
111798
+ * ClickUp list id; falls back to CLICKUP_TEST_LIST_ID
111799
+ */
111800
+ listId?: string;
111801
+ }
111802
+ export interface PlaygroundClickupCreateTaskOutput {
111803
+ minted: boolean;
111804
+ task_id: (string | null);
111805
+ list_status: number;
111806
+ vend_status: number;
111807
+ clickup_status: number;
111808
+ installation_count: number;
111809
+ }
111810
+ export interface PlaygroundClickupGetLastWebhookInput {
111811
+ }
111812
+ export type PlaygroundClickupGetLastWebhookOutput = ({
111813
+ payload: string;
111814
+ event_id: string;
111815
+ provider: string;
111816
+ verified: boolean;
111817
+ product_id: string;
111818
+ occurred_at: string;
111819
+ connector_id: string;
111820
+ clickup_event: (string | null);
111821
+ receipt_count: number;
111822
+ } | {
111823
+ found: false;
111824
+ });
111825
+ export interface PlaygroundClickupGetOverviewInput {
111826
+ }
111827
+ export interface PlaygroundClickupGetOverviewOutput {
111828
+ team: ({
111829
+ teamId: string;
111830
+ teamName: string;
111831
+ } | null);
111832
+ lists: PlaygroundClickupGetOverviewOutputItems[];
111833
+ tasks: {
111834
+ id: string;
111835
+ name: string;
111836
+ status: (string | null);
111837
+ }[];
111838
+ minted: boolean;
111839
+ spaces: PlaygroundClickupGetOverviewOutputItems[];
111840
+ list_status: number;
111841
+ vend_status: number;
111842
+ lists_status: number;
111843
+ tasks_status: number;
111844
+ spaces_status: number;
111845
+ folders_status: number;
111846
+ installation_count: number;
111847
+ }
111848
+ export interface PlaygroundClickupGetOverviewOutputItems {
111849
+ id: string;
111850
+ name: string;
111851
+ }
111852
+ export interface PlaygroundEchoPingInput {
111853
+ /**
111854
+ * The text to echo back, 1–1024 characters
111855
+ */
111856
+ message: string;
111857
+ }
111858
+ export interface PlaygroundEchoPingOutput {
111859
+ /**
111860
+ * The message exactly as it was received
111861
+ */
111862
+ message: string;
111863
+ /**
111864
+ * The product the call was resolved to
111865
+ */
111866
+ productId: string;
111867
+ /**
111868
+ * ISO-8601 instant (UTC) at which the call reached the service
111869
+ */
111870
+ receivedAt: string;
111871
+ }
111872
+ export interface PlaygroundGdriveGetLastChangeInput {
111873
+ }
111874
+ export type PlaygroundGdriveGetLastChangeOutput = ({
111875
+ file_id: string;
111876
+ removed: boolean;
111877
+ file_name: (string | null);
111878
+ mime_type: (string | null);
111879
+ product_id: string;
111880
+ occurred_at: string;
111881
+ connector_id: string;
111882
+ resource_state: string;
111883
+ } | {
111884
+ found: false;
111885
+ });
111886
+ export interface PlaygroundGdriveReadFileInput {
111887
+ /**
111888
+ * Drive file id; falls back to GDRIVE_TEST_FILE_ID, then the first picked file
111889
+ */
111890
+ fileId?: string;
111891
+ }
111892
+ export interface PlaygroundGdriveReadFileOutput {
111893
+ minted: boolean;
111894
+ file_id: (string | null);
111895
+ file_name: (string | null);
111896
+ mime_type: (string | null);
111897
+ file_count: number;
111898
+ get_status: number;
111899
+ list_status: number;
111900
+ vend_status: number;
111901
+ content_bytes: (number | null);
111902
+ }
111903
+ export interface PlaygroundGoogleadsReadCustomerInput {
111904
+ }
111905
+ export interface PlaygroundGoogleadsReadCustomerOutput {
111906
+ minted: boolean;
111907
+ vended: boolean;
111908
+ customer_id: (string | null);
111909
+ vend_status: number;
111910
+ result_count: number;
111911
+ search_status: number;
111912
+ login_customer_id: (string | null);
111913
+ }
111914
+ export interface PlaygroundLifecycleGetStateInput {
111915
+ }
111916
+ export interface PlaygroundLifecycleGetStateOutput {
111917
+ blocked: boolean;
111918
+ archived: boolean;
111919
+ productId: string;
111920
+ lastBlockTransition: ({
111921
+ eventId: string;
111922
+ eventName: string;
111923
+ productId: string;
111924
+ occurredAt: string;
111925
+ recordedAt: string;
111926
+ receiptCount: number;
111927
+ organizationId: string;
111928
+ cascadedFromOrg: boolean;
111929
+ } | null);
111930
+ lastArchiveTransition: ({
111931
+ eventId: string;
111932
+ eventName: string;
111933
+ productId: string;
111934
+ occurredAt: string;
111935
+ recordedAt: string;
111936
+ receiptCount: number;
111937
+ organizationId: string;
111938
+ cascadedFromOrg: boolean;
111939
+ } | null);
111940
+ }
111941
+ export interface PlaygroundLifecycleListEventsInput {
111942
+ }
111943
+ export type PlaygroundLifecycleListEventsOutput = {
111944
+ eventId: string;
111945
+ eventName: string;
111946
+ productId: string;
111947
+ occurredAt: string;
111948
+ recordedAt: string;
111949
+ receiptCount: number;
111950
+ organizationId: string;
111951
+ cascadedFromOrg: boolean;
111952
+ }[];
111953
+ export interface PlaygroundWebhookGetLastInput {
111954
+ }
111955
+ export type PlaygroundWebhookGetLastOutput = ({
111956
+ payload?: unknown;
111957
+ event_id: string;
111958
+ provider: string;
111959
+ verified: boolean;
111960
+ product_id: string;
111961
+ occurred_at: string;
111962
+ connector_id: string;
111963
+ delivery_count: number;
111964
+ } | {
111965
+ found: false;
111966
+ });
111967
+ export interface PlaygroundWorkflowEchoInput {
111968
+ /**
111969
+ * The text to store, 1–1024 characters
111970
+ */
111971
+ note: string;
111972
+ /**
111973
+ * Optional labels stored alongside the note, at most 20
111974
+ *
111975
+ * @maxItems 20
111976
+ */
111977
+ tags?: [] | [string] | [string, string] | [string, string, string] | [string, string, string, string] | [string, string, string, string, string] | [string, string, string, string, string, string] | [string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string] | [string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string, string];
111978
+ }
111979
+ export interface PlaygroundWorkflowEchoOutput {
111980
+ /**
111981
+ * Identifier of the stored echo
111982
+ */
111983
+ id: string;
111984
+ /**
111985
+ * The note exactly as it was received
111986
+ */
111987
+ note: string;
111988
+ /**
111989
+ * The tags exactly as they were received
111990
+ */
111991
+ tags: string[];
111992
+ /**
111993
+ * Correlation id for this echo. The playground/workflow.echoed event published about two seconds later repeats it, which is how a composer matches the completion back to this step.
111994
+ */
111995
+ echo_id: string;
111996
+ /**
111997
+ * ISO-8601 instant (UTC) at which the echo was stored
111998
+ */
111999
+ received_at: string;
112000
+ }
112001
+ export interface PlaygroundWorkflowEchoListInput {
112002
+ }
112003
+ export type PlaygroundWorkflowEchoListOutput = {
112004
+ /**
112005
+ * Identifier of the stored echo
112006
+ */
112007
+ id: string;
112008
+ /**
112009
+ * The note exactly as it was received
112010
+ */
112011
+ note: string;
112012
+ /**
112013
+ * The tags exactly as they were received
112014
+ */
112015
+ tags: string[];
112016
+ /**
112017
+ * ISO-8601 instant (UTC) at which the echo was stored
112018
+ */
112019
+ received_at: string;
112020
+ }[];
112021
+ export interface PlaygroundWorkflowPingInput {
112022
+ /**
112023
+ * Class of ping, echoed on the emitted event and filterable on the trigger. Defaults to 'manual'.
112024
+ */
112025
+ kind?: string;
112026
+ }
112027
+ export interface PlaygroundWorkflowPingOutput {
112028
+ /**
112029
+ * Correlation id for this ping. The emitted playground/workflow.ping event repeats it, which is how a composer matches the event back to this step.
112030
+ */
112031
+ id: string;
112032
+ /**
112033
+ * The name of the event that was published
112034
+ */
112035
+ event: string;
112036
+ }
112037
+ export interface PlaygroundWorkflowSubjectsListInput {
112038
+ /**
112039
+ * How many subjects to return, 1–100. Defaults to 25.
112040
+ */
112041
+ limit?: number;
112042
+ /**
112043
+ * The next_cursor of the previous page. Opaque — pass it back unchanged. Omit for the first page.
112044
+ */
112045
+ cursor?: string;
112046
+ /**
112047
+ * ISO-8601 UTC instant. Return only subjects whose last_activity_at is AT OR AFTER this — the opposite question, the recently active population. Omit for no lower bound.
112048
+ */
112049
+ last_activity_after?: string;
112050
+ /**
112051
+ * ISO-8601 UTC instant. Return only subjects whose last_activity_at is AT OR BEFORE this — the "inactive for N days" question: pass now minus N days. Omit for no upper bound.
112052
+ */
112053
+ last_activity_before?: string;
112054
+ }
112055
+ export interface PlaygroundWorkflowSubjectsListOutput {
112056
+ /**
112057
+ * This page of subjects, most recently active first
112058
+ */
112059
+ items: {
112060
+ /**
112061
+ * Stable identifier for the subject. This is the field a batch trigger keys on, so a subject already served in an earlier run is skipped rather than served twice.
112062
+ */
112063
+ subject_key: string;
112064
+ /**
112065
+ * Human-readable name of the subject
112066
+ */
112067
+ display_name: string;
112068
+ /**
112069
+ * ISO-8601 instant (UTC) of the subject last activity
112070
+ */
112071
+ last_activity_at: string;
112072
+ }[];
112073
+ /**
112074
+ * Whether another page follows. False and a null next_cursor both mark the last page, so a consumer that loops on either terminates.
112075
+ */
112076
+ has_more: boolean;
112077
+ /**
112078
+ * Pass back as `cursor` to fetch the next page; null on the last page. Always null when has_more is false.
112079
+ */
112080
+ next_cursor: (string | null);
112081
+ }
112082
+ export interface PlaygroundWsEchoInput {
112083
+ }
112084
+ export type PlaygroundWsEchoOutput = unknown;
111759
112085
  export interface RealtimeArchiveExportInput {
111760
112086
  /**
111761
112087
  * Only entries with ts <= to_ts (epoch ms)
@@ -137537,6 +137863,79 @@ export interface UsersConfigGetOutput {
137537
137863
  * Sender for auth email, e.g. "Acme <auth@acme.com>". MUST be on a domain verified in this product's mail toolkit. While it is null, email_code/email_link are not offered as strategies.
137538
137864
  */
137539
137865
  from: (string | null);
137866
+ /**
137867
+ * Auth emails sent from a mail-toolkit template, by purpose (e.g. `sign_in`). An absent purpose uses the built-in email.
137868
+ */
137869
+ templates: {
137870
+ /**
137871
+ * Id of a published template in this product’s mail toolkit.
137872
+ */
137873
+ invite?: string;
137874
+ /**
137875
+ * Id of a published template in this product’s mail toolkit.
137876
+ */
137877
+ verify?: string;
137878
+ /**
137879
+ * Id of a published template in this product’s mail toolkit.
137880
+ */
137881
+ sign_in?: string;
137882
+ /**
137883
+ * Id of a published template in this product’s mail toolkit.
137884
+ */
137885
+ mfa_reset?: string;
137886
+ /**
137887
+ * Id of a published template in this product’s mail toolkit.
137888
+ */
137889
+ new_device?: string;
137890
+ /**
137891
+ * Id of a published template in this product’s mail toolkit.
137892
+ */
137893
+ impersonation?: string;
137894
+ /**
137895
+ * Id of a published template in this product’s mail toolkit.
137896
+ */
137897
+ password_reset?: string;
137898
+ /**
137899
+ * Id of a published template in this product’s mail toolkit.
137900
+ */
137901
+ waitlist_joined?: string;
137902
+ /**
137903
+ * Id of a published template in this product’s mail toolkit.
137904
+ */
137905
+ password_changed?: string;
137906
+ /**
137907
+ * Id of a published template in this product’s mail toolkit.
137908
+ */
137909
+ waitlist_confirm?: string;
137910
+ /**
137911
+ * Id of a published template in this product’s mail toolkit.
137912
+ */
137913
+ email_change_revert?: string;
137914
+ /**
137915
+ * Id of a published template in this product’s mail toolkit.
137916
+ */
137917
+ mfa_reset_scheduled?: string;
137918
+ /**
137919
+ * Id of a published template in this product’s mail toolkit.
137920
+ */
137921
+ email_change_approve?: string;
137922
+ /**
137923
+ * Id of a published template in this product’s mail toolkit.
137924
+ */
137925
+ email_change_confirm?: string;
137926
+ /**
137927
+ * Id of a published template in this product’s mail toolkit.
137928
+ */
137929
+ email_change_reverted?: string;
137930
+ /**
137931
+ * Id of a published template in this product’s mail toolkit.
137932
+ */
137933
+ email_change_completed?: string;
137934
+ /**
137935
+ * Id of a published template in this product’s mail toolkit.
137936
+ */
137937
+ email_change_override_cancel?: string;
137938
+ };
137540
137939
  /**
137541
137940
  * Offer the 6-digit code strategy (email_code). Default true.
137542
137941
  */
@@ -137561,6 +137960,10 @@ export interface UsersConfigGetOutput {
137561
137960
  * Wrong-code entries allowed per token before it is spent. Default 5.
137562
137961
  */
137563
137962
  maxCodeAttempts: number;
137963
+ /**
137964
+ * Require a verified email before any session is issued. While true, a user whose primary email is unverified gets no session from a password, OAuth or passkey sign-in (or a password sign-up): the flow emails a confirmation code and answers `needs_first_factor` with `strategy: "email_code"`, and the sign-in completes once the code is entered. Needs `email.from` set and `email.codeEnabled` true, and is refused otherwise. Turning it on does not end sessions that already exist. Default false.
137965
+ */
137966
+ requireVerified: boolean;
137564
137967
  /**
137565
137968
  * Minimum seconds between two auth emails to one address. Floor of 60 is enforced regardless. Default 60.
137566
137969
  */
@@ -137831,6 +138234,97 @@ export interface UsersConfigUpsertInput {
137831
138234
  * Sender for auth email, e.g. "Acme <auth@acme.com>". MUST be on a domain verified in this product's mail toolkit. While it is null, email_code/email_link are not offered as strategies.
137832
138235
  */
137833
138236
  from?: (string | null);
138237
+ /**
138238
+ * Bind auth emails to mail-toolkit templates, by purpose. Merged purpose by purpose; `null` returns that purpose to the built-in email. The template must be PUBLISHED in this product's mail toolkit and use the purpose's required variables as {{ name }}; this server checks only the purpose and the id format, not the template. If mail cannot render it at send time, the built-in email is sent instead and `auth_email.template_fallback` is audited.
138239
+ * Variables Users passes, per purpose (`*` = required: the template must use it; `?` = sent only sometimes, so the template must not require it; the rest are always sent):
138240
+ * sign_in: code*, expires_in_minutes, link_url?
138241
+ * verify: code*, expires_in_minutes, link_url?
138242
+ * password_reset: link_url*, expires_in_minutes
138243
+ * invite: link_url*, expires_in_minutes
138244
+ * email_change_confirm: link_url*, expires_in_minutes
138245
+ * email_change_approve: link_url*, expires_in_minutes, new_address
138246
+ * email_change_revert: link_url*, expires_in_minutes, new_address
138247
+ * email_change_override_cancel: link_url*, expires_in_minutes, new_address, takes_effect_in
138248
+ * password_changed: none
138249
+ * new_device: browser?
138250
+ * email_change_completed: none
138251
+ * email_change_reverted: none
138252
+ * mfa_reset_scheduled: link_url*, expires_in_minutes, takes_effect_in
138253
+ * mfa_reset: none
138254
+ * impersonation: reason
138255
+ * waitlist_confirm: link_url*, expires_in_minutes
138256
+ * waitlist_joined: link_url*, expires_in_minutes
138257
+ */
138258
+ templates?: {
138259
+ /**
138260
+ * Id of a published template in this product’s mail toolkit.
138261
+ */
138262
+ invite?: (string | null);
138263
+ /**
138264
+ * Id of a published template in this product’s mail toolkit.
138265
+ */
138266
+ verify?: (string | null);
138267
+ /**
138268
+ * Id of a published template in this product’s mail toolkit.
138269
+ */
138270
+ sign_in?: (string | null);
138271
+ /**
138272
+ * Id of a published template in this product’s mail toolkit.
138273
+ */
138274
+ mfa_reset?: (string | null);
138275
+ /**
138276
+ * Id of a published template in this product’s mail toolkit.
138277
+ */
138278
+ new_device?: (string | null);
138279
+ /**
138280
+ * Id of a published template in this product’s mail toolkit.
138281
+ */
138282
+ impersonation?: (string | null);
138283
+ /**
138284
+ * Id of a published template in this product’s mail toolkit.
138285
+ */
138286
+ password_reset?: (string | null);
138287
+ /**
138288
+ * Id of a published template in this product’s mail toolkit.
138289
+ */
138290
+ waitlist_joined?: (string | null);
138291
+ /**
138292
+ * Id of a published template in this product’s mail toolkit.
138293
+ */
138294
+ password_changed?: (string | null);
138295
+ /**
138296
+ * Id of a published template in this product’s mail toolkit.
138297
+ */
138298
+ waitlist_confirm?: (string | null);
138299
+ /**
138300
+ * Id of a published template in this product’s mail toolkit.
138301
+ */
138302
+ email_change_revert?: (string | null);
138303
+ /**
138304
+ * Id of a published template in this product’s mail toolkit.
138305
+ */
138306
+ mfa_reset_scheduled?: (string | null);
138307
+ /**
138308
+ * Id of a published template in this product’s mail toolkit.
138309
+ */
138310
+ email_change_approve?: (string | null);
138311
+ /**
138312
+ * Id of a published template in this product’s mail toolkit.
138313
+ */
138314
+ email_change_confirm?: (string | null);
138315
+ /**
138316
+ * Id of a published template in this product’s mail toolkit.
138317
+ */
138318
+ email_change_reverted?: (string | null);
138319
+ /**
138320
+ * Id of a published template in this product’s mail toolkit.
138321
+ */
138322
+ email_change_completed?: (string | null);
138323
+ /**
138324
+ * Id of a published template in this product’s mail toolkit.
138325
+ */
138326
+ email_change_override_cancel?: (string | null);
138327
+ };
137834
138328
  /**
137835
138329
  * Offer the 6-digit code strategy (email_code). Default true.
137836
138330
  */
@@ -137855,6 +138349,10 @@ export interface UsersConfigUpsertInput {
137855
138349
  * Wrong-code entries allowed per token before it is spent. Default 5.
137856
138350
  */
137857
138351
  maxCodeAttempts?: number;
138352
+ /**
138353
+ * Require a verified email before any session is issued. While true, a user whose primary email is unverified gets no session from a password, OAuth or passkey sign-in (or a password sign-up): the flow emails a confirmation code and answers `needs_first_factor` with `strategy: "email_code"`, and the sign-in completes once the code is entered. Needs `email.from` set and `email.codeEnabled` true, and is refused otherwise. Turning it on does not end sessions that already exist. Default false.
138354
+ */
138355
+ requireVerified?: boolean;
137858
138356
  /**
137859
138357
  * Minimum seconds between two auth emails to one address. Floor of 60 is enforced regardless. Default 60.
137860
138358
  */
@@ -138213,6 +138711,79 @@ export interface UsersConfigUpsertOutput {
138213
138711
  * Sender for auth email, e.g. "Acme <auth@acme.com>". MUST be on a domain verified in this product's mail toolkit. While it is null, email_code/email_link are not offered as strategies.
138214
138712
  */
138215
138713
  from: (string | null);
138714
+ /**
138715
+ * Auth emails sent from a mail-toolkit template, by purpose (e.g. `sign_in`). An absent purpose uses the built-in email.
138716
+ */
138717
+ templates: {
138718
+ /**
138719
+ * Id of a published template in this product’s mail toolkit.
138720
+ */
138721
+ invite?: string;
138722
+ /**
138723
+ * Id of a published template in this product’s mail toolkit.
138724
+ */
138725
+ verify?: string;
138726
+ /**
138727
+ * Id of a published template in this product’s mail toolkit.
138728
+ */
138729
+ sign_in?: string;
138730
+ /**
138731
+ * Id of a published template in this product’s mail toolkit.
138732
+ */
138733
+ mfa_reset?: string;
138734
+ /**
138735
+ * Id of a published template in this product’s mail toolkit.
138736
+ */
138737
+ new_device?: string;
138738
+ /**
138739
+ * Id of a published template in this product’s mail toolkit.
138740
+ */
138741
+ impersonation?: string;
138742
+ /**
138743
+ * Id of a published template in this product’s mail toolkit.
138744
+ */
138745
+ password_reset?: string;
138746
+ /**
138747
+ * Id of a published template in this product’s mail toolkit.
138748
+ */
138749
+ waitlist_joined?: string;
138750
+ /**
138751
+ * Id of a published template in this product’s mail toolkit.
138752
+ */
138753
+ password_changed?: string;
138754
+ /**
138755
+ * Id of a published template in this product’s mail toolkit.
138756
+ */
138757
+ waitlist_confirm?: string;
138758
+ /**
138759
+ * Id of a published template in this product’s mail toolkit.
138760
+ */
138761
+ email_change_revert?: string;
138762
+ /**
138763
+ * Id of a published template in this product’s mail toolkit.
138764
+ */
138765
+ mfa_reset_scheduled?: string;
138766
+ /**
138767
+ * Id of a published template in this product’s mail toolkit.
138768
+ */
138769
+ email_change_approve?: string;
138770
+ /**
138771
+ * Id of a published template in this product’s mail toolkit.
138772
+ */
138773
+ email_change_confirm?: string;
138774
+ /**
138775
+ * Id of a published template in this product’s mail toolkit.
138776
+ */
138777
+ email_change_reverted?: string;
138778
+ /**
138779
+ * Id of a published template in this product’s mail toolkit.
138780
+ */
138781
+ email_change_completed?: string;
138782
+ /**
138783
+ * Id of a published template in this product’s mail toolkit.
138784
+ */
138785
+ email_change_override_cancel?: string;
138786
+ };
138216
138787
  /**
138217
138788
  * Offer the 6-digit code strategy (email_code). Default true.
138218
138789
  */
@@ -138237,6 +138808,10 @@ export interface UsersConfigUpsertOutput {
138237
138808
  * Wrong-code entries allowed per token before it is spent. Default 5.
138238
138809
  */
138239
138810
  maxCodeAttempts: number;
138811
+ /**
138812
+ * Require a verified email before any session is issued. While true, a user whose primary email is unverified gets no session from a password, OAuth or passkey sign-in (or a password sign-up): the flow emails a confirmation code and answers `needs_first_factor` with `strategy: "email_code"`, and the sign-in completes once the code is entered. Needs `email.from` set and `email.codeEnabled` true, and is refused otherwise. Turning it on does not end sessions that already exist. Default false.
138813
+ */
138814
+ requireVerified: boolean;
138240
138815
  /**
138241
138816
  * Minimum seconds between two auth emails to one address. Floor of 60 is enforced regardless. Default 60.
138242
138817
  */