@inneropen/marvin-sdk 2.0.0-next.18 → 2.0.0-next.2

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.
@@ -1,5 +1,4 @@
1
- import { H as HttpClient } from './HttpClient-CdF3IHM1.js';
2
- import { AuthToken } from './types/index.js';
1
+ import { H as HttpClient } from './HttpClient-CLtgQGXH.js';
3
2
 
4
3
  interface components {
5
4
  schemas: {
@@ -561,163 +560,6 @@ interface components {
561
560
  /** Error */
562
561
  error?: string | null;
563
562
  };
564
- /**
565
- * EmailTemplateCreate
566
- * @description Schema for creating a new email template.
567
- */
568
- EmailTemplateCreate: {
569
- /**
570
- * Templatetype
571
- * @description Type of email (invitation, password_reset, notification, test)
572
- */
573
- templateType: string;
574
- /**
575
- * Groupid
576
- * @description Workspace ID - null for system-wide templates
577
- */
578
- groupId?: string | null;
579
- /**
580
- * Name
581
- * @description Human-readable template name
582
- */
583
- name: string;
584
- /**
585
- * Description
586
- * @description Description of when this template is used
587
- */
588
- description?: string | null;
589
- /**
590
- * Subject
591
- * @description Email subject line - supports Jinja2 variables
592
- */
593
- subject: string;
594
- /**
595
- * Headertext
596
- * @description Header text (structured mode with default.html)
597
- */
598
- headerText?: string | null;
599
- /**
600
- * Messagetop
601
- * @description Top message (structured mode with default.html)
602
- */
603
- messageTop?: string | null;
604
- /**
605
- * Messagebottom
606
- * @description Bottom message (structured mode with default.html)
607
- */
608
- messageBottom?: string | null;
609
- /**
610
- * Buttontext
611
- * @description Button text (structured mode with default.html)
612
- */
613
- buttonText?: string | null;
614
- /**
615
- * Customhtml
616
- * @description Full custom HTML - if set, overrides structured fields
617
- */
618
- customHtml?: string | null;
619
- /**
620
- * Availablevariables
621
- * @description Documentation of available variables
622
- */
623
- availableVariables?: {
624
- [key: string]: unknown;
625
- } | null;
626
- /**
627
- * Enabled
628
- * @description Whether this template is active
629
- * @default true
630
- */
631
- enabled: boolean;
632
- };
633
- /**
634
- * EmailTemplateRead
635
- * @description Schema for reading an email template.
636
- */
637
- EmailTemplateRead: {
638
- /**
639
- * Id
640
- * Format: uuid4
641
- */
642
- id: string;
643
- /** Templatetype */
644
- templateType: string;
645
- /** Groupid */
646
- groupId: string | null;
647
- /** Name */
648
- name: string;
649
- /** Description */
650
- description: string | null;
651
- /** Subject */
652
- subject: string;
653
- /** Headertext */
654
- headerText: string | null;
655
- /** Messagetop */
656
- messageTop: string | null;
657
- /** Messagebottom */
658
- messageBottom: string | null;
659
- /** Buttontext */
660
- buttonText: string | null;
661
- /** Customhtml */
662
- customHtml: string | null;
663
- /** Availablevariables */
664
- availableVariables: {
665
- [key: string]: unknown;
666
- } | null;
667
- /** Enabled */
668
- enabled: boolean;
669
- /** Createdat */
670
- createdAt: string;
671
- /** Updateat */
672
- updateAt: string;
673
- };
674
- /**
675
- * EmailTemplateSummary
676
- * @description Summary schema for listing email templates.
677
- */
678
- EmailTemplateSummary: {
679
- /**
680
- * Id
681
- * Format: uuid4
682
- */
683
- id: string;
684
- /** Templatetype */
685
- templateType: string;
686
- /** Name */
687
- name: string;
688
- /** Description */
689
- description: string | null;
690
- /** Enabled */
691
- enabled: boolean;
692
- };
693
- /**
694
- * EmailTemplateUpdate
695
- * @description Schema for updating an email template.
696
- */
697
- EmailTemplateUpdate: {
698
- /** Name */
699
- name?: string | null;
700
- /** Description */
701
- description?: string | null;
702
- /** Subject */
703
- subject?: string | null;
704
- /** Headertext */
705
- headerText?: string | null;
706
- /** Messagetop */
707
- messageTop?: string | null;
708
- /** Messagebottom */
709
- messageBottom?: string | null;
710
- /** Buttontext */
711
- buttonText?: string | null;
712
- /** Customhtml */
713
- customHtml?: string | null;
714
- /** Availablevariables */
715
- availableVariables?: {
716
- [key: string]: unknown;
717
- } | null;
718
- /** Enabled */
719
- enabled?: boolean | null;
720
- };
721
563
  /**
722
564
  * EmailTest
723
565
  * @description Schema for the request body when sending a test email.
@@ -804,9 +646,6 @@ interface components {
804
646
  /**
805
647
  * EntryCreate
806
648
  * @description Schema for creating an entry.
807
- *
808
- * BREAKING CHANGE: content_markdown removed, replaced with data_json.
809
- * Entry content is now schema-driven based on entry_type.schema_json.
810
649
  */
811
650
  EntryCreate: {
812
651
  /**
@@ -822,13 +661,8 @@ interface components {
822
661
  summary?: string | null;
823
662
  /** Description */
824
663
  description?: string | null;
825
- /**
826
- * Datajson
827
- * @description Schema-driven content data (validated against entry_type.schema_json)
828
- */
829
- dataJson?: {
830
- [key: string]: unknown;
831
- };
664
+ /** Contentmarkdown */
665
+ contentMarkdown?: string | null;
832
666
  /**
833
667
  * Status
834
668
  * @default inbox
@@ -836,14 +670,7 @@ interface components {
836
670
  status: string;
837
671
  /** Publishedat */
838
672
  publishedAt?: string | null;
839
- /** Publishat */
840
- publishAt?: string | null;
841
- /** Expireat */
842
- expireAt?: string | null;
843
- /**
844
- * Metadatajson
845
- * @description Custom non-schema metadata (API keys, external IDs, etc.)
846
- */
673
+ /** Metadatajson */
847
674
  metadataJson?: {
848
675
  [key: string]: unknown;
849
676
  } | null;
@@ -870,9 +697,6 @@ interface components {
870
697
  /**
871
698
  * EntryRead
872
699
  * @description Schema for reading an entry.
873
- *
874
- * BREAKING CHANGE: content_markdown removed, replaced with data_json.
875
- * Entry content is now schema-driven based on entry_type.schema_json.
876
700
  */
877
701
  EntryRead: {
878
702
  /**
@@ -898,25 +722,13 @@ interface components {
898
722
  summary?: string | null;
899
723
  /** Description */
900
724
  description?: string | null;
901
- /**
902
- * Datajson
903
- * @description Schema-driven content data
904
- */
905
- dataJson?: {
906
- [key: string]: unknown;
907
- };
725
+ /** Contentmarkdown */
726
+ contentMarkdown?: string | null;
908
727
  /** Status */
909
728
  status: string;
910
729
  /** Publishedat */
911
730
  publishedAt?: string | null;
912
- /** Publishat */
913
- publishAt?: string | null;
914
- /** Expireat */
915
- expireAt?: string | null;
916
- /**
917
- * Metadatajson
918
- * @description Custom non-schema metadata
919
- */
731
+ /** Metadatajson */
920
732
  metadataJson?: {
921
733
  [key: string]: unknown;
922
734
  } | null;
@@ -969,20 +781,10 @@ interface components {
969
781
  * @default false
970
782
  */
971
783
  isSystem: boolean;
972
- /**
973
- * Schema Json
974
- * @description Entry type schema definition (EntryTypeSchemaDefinition)
975
- */
976
- schema_json?: {
977
- [key: string]: unknown;
978
- } | null;
979
784
  };
980
785
  /**
981
786
  * EntryTypeRead
982
787
  * @description Schema for reading an entry type.
983
- *
984
- * System entry types have group_id=None and are globally available to all workspaces.
985
- * Workspace-scoped entry types have a specific group_id.
986
788
  */
987
789
  EntryTypeRead: {
988
790
  /**
@@ -990,8 +792,11 @@ interface components {
990
792
  * Format: uuid4
991
793
  */
992
794
  id: string;
993
- /** Groupid */
994
- groupId: string | null;
795
+ /**
796
+ * Groupid
797
+ * Format: uuid4
798
+ */
799
+ groupId: string;
995
800
  /** Name */
996
801
  name: string;
997
802
  /** Slug */
@@ -1006,13 +811,6 @@ interface components {
1006
811
  sortOrder: number;
1007
812
  /** Issystem */
1008
813
  isSystem: boolean;
1009
- /**
1010
- * Schemajson
1011
- * @description Entry type schema definition (EntryTypeSchemaDefinition)
1012
- */
1013
- schemaJson?: {
1014
- [key: string]: unknown;
1015
- } | null;
1016
814
  /** Createdat */
1017
815
  createdAt?: string | null;
1018
816
  /** Updateat */
@@ -1037,20 +835,10 @@ interface components {
1037
835
  sortOrder?: number | null;
1038
836
  /** Issystem */
1039
837
  isSystem?: boolean | null;
1040
- /**
1041
- * Schema Json
1042
- * @description Entry type schema definition (EntryTypeSchemaDefinition)
1043
- */
1044
- schema_json?: {
1045
- [key: string]: unknown;
1046
- } | null;
1047
838
  };
1048
839
  /**
1049
840
  * EntryUpdate
1050
841
  * @description Schema for patching an entry.
1051
- *
1052
- * BREAKING CHANGE: content_markdown removed, replaced with data_json.
1053
- * Entry content is now schema-driven based on entry_type.schema_json.
1054
842
  */
1055
843
  EntryUpdate: {
1056
844
  /** Entry Type Id */
@@ -1063,26 +851,14 @@ interface components {
1063
851
  summary?: string | null;
1064
852
  /** Description */
1065
853
  description?: string | null;
1066
- /**
1067
- * Datajson
1068
- * @description Schema-driven content data (validated against entry_type.schema_json)
1069
- */
1070
- dataJson?: {
1071
- [key: string]: unknown;
1072
- } | null;
854
+ /** Content Markdown */
855
+ content_markdown?: string | null;
1073
856
  /** Status */
1074
857
  status?: string | null;
1075
- /** Publishedat */
1076
- publishedAt?: string | null;
1077
- /** Publishat */
1078
- publishAt?: string | null;
1079
- /** Expireat */
1080
- expireAt?: string | null;
1081
- /**
1082
- * Metadatajson
1083
- * @description Custom non-schema metadata (API keys, external IDs, etc.)
1084
- */
1085
- metadataJson?: {
858
+ /** Published At */
859
+ published_at?: string | null;
860
+ /** Metadata Json */
861
+ metadata_json?: {
1086
862
  [key: string]: unknown;
1087
863
  } | null;
1088
864
  /** Collection Ids */
@@ -1098,7 +874,7 @@ interface components {
1098
874
  * Helps listeners understand the nature of `EventDocumentDataBase` content.
1099
875
  * @enum {string}
1100
876
  */
1101
- EventDocumentType: "generic" | "user" | "workspace" | "entry" | "form" | "form_submission" | "collection" | "asset" | "webhook" | "member" | "invitation" | "api_token" | "api_client" | "entry_type" | "resource" | "deployment";
877
+ EventDocumentType: "generic" | "user" | "workspace" | "entry" | "collection" | "asset" | "webhook" | "member" | "invitation" | "api_token" | "api_client" | "entry_type" | "resource" | "deployment";
1102
878
  /**
1103
879
  * EventLogRead
1104
880
  * @description Schema for reading an event log entry.
@@ -1248,165 +1024,6 @@ interface components {
1248
1024
  /** Email */
1249
1025
  email: string;
1250
1026
  };
1251
- /**
1252
- * FormCreate
1253
- * @description Schema for creating a form.
1254
- */
1255
- FormCreate: {
1256
- /** Name */
1257
- name: string;
1258
- /** Slug */
1259
- slug?: string | null;
1260
- /** Description */
1261
- description?: string | null;
1262
- /**
1263
- * Status
1264
- * @default draft
1265
- */
1266
- status: string;
1267
- /** Formschema */
1268
- formSchema?: {
1269
- [key: string]: unknown;
1270
- };
1271
- /** Settingsjson */
1272
- settingsJson?: {
1273
- [key: string]: unknown;
1274
- } | null;
1275
- /** Metadatajson */
1276
- metadataJson?: {
1277
- [key: string]: unknown;
1278
- } | null;
1279
- };
1280
- /**
1281
- * FormRead
1282
- * @description Schema for reading a form.
1283
- */
1284
- FormRead: {
1285
- /**
1286
- * Id
1287
- * Format: uuid4
1288
- */
1289
- id: string;
1290
- /**
1291
- * Groupid
1292
- * Format: uuid4
1293
- */
1294
- groupId: string;
1295
- /** Slug */
1296
- slug: string;
1297
- /** Name */
1298
- name: string;
1299
- /** Description */
1300
- description: string | null;
1301
- /** Schemajson */
1302
- schemaJson: {
1303
- [key: string]: unknown;
1304
- };
1305
- /** Settingsjson */
1306
- settingsJson: {
1307
- [key: string]: unknown;
1308
- } | null;
1309
- /** Metadatajson */
1310
- metadataJson: {
1311
- [key: string]: unknown;
1312
- } | null;
1313
- /** Status */
1314
- status: string;
1315
- /** Submissionscount */
1316
- submissionsCount: number;
1317
- /** Lastsubmissionat */
1318
- lastSubmissionAt: string | null;
1319
- /** Createdat */
1320
- createdAt: string | null;
1321
- /** Updateat */
1322
- updateAt: string | null;
1323
- };
1324
- /**
1325
- * FormSubmissionRead
1326
- * @description Schema for reading a form submission.
1327
- */
1328
- FormSubmissionRead: {
1329
- /**
1330
- * Id
1331
- * Format: uuid4
1332
- */
1333
- id: string;
1334
- /**
1335
- * Formid
1336
- * Format: uuid4
1337
- */
1338
- formId: string;
1339
- /**
1340
- * Groupid
1341
- * Format: uuid4
1342
- */
1343
- groupId: string;
1344
- /** Datajson */
1345
- dataJson: {
1346
- [key: string]: unknown;
1347
- };
1348
- /** Metadatajson */
1349
- metadataJson: {
1350
- [key: string]: unknown;
1351
- } | null;
1352
- /** Status */
1353
- status: string;
1354
- /** Ipaddress */
1355
- ipAddress: string | null;
1356
- /** Useragent */
1357
- userAgent: string | null;
1358
- /** Referrer */
1359
- referrer: string | null;
1360
- /**
1361
- * Submittedat
1362
- * Format: date-time
1363
- */
1364
- submittedAt: string;
1365
- /** Processedat */
1366
- processedAt: string | null;
1367
- };
1368
- /**
1369
- * FormSubmissionResponse
1370
- * @description Response after form submission.
1371
- *
1372
- * Indicates success/failure and optionally provides redirect URL.
1373
- */
1374
- FormSubmissionResponse: {
1375
- /** Success */
1376
- success: boolean;
1377
- /** Message */
1378
- message: string;
1379
- /** Submissionid */
1380
- submissionId?: string | null;
1381
- /** Redirecturl */
1382
- redirectUrl?: string | null;
1383
- };
1384
- /**
1385
- * FormUpdate
1386
- * @description Schema for updating a form.
1387
- */
1388
- FormUpdate: {
1389
- /** Name */
1390
- name?: string | null;
1391
- /** Slug */
1392
- slug?: string | null;
1393
- /** Description */
1394
- description?: string | null;
1395
- /** Status */
1396
- status?: string | null;
1397
- /** Formschema */
1398
- formSchema?: {
1399
- [key: string]: unknown;
1400
- } | null;
1401
- /** Settingsjson */
1402
- settingsJson?: {
1403
- [key: string]: unknown;
1404
- } | null;
1405
- /** Metadatajson */
1406
- metadataJson?: {
1407
- [key: string]: unknown;
1408
- } | null;
1409
- };
1410
1027
  /**
1411
1028
  * GroupAdminUpdate
1412
1029
  * @description Schema for administrators to update a group.
@@ -2001,10 +1618,15 @@ interface components {
2001
1618
  description?: string | null;
2002
1619
  /** Publicurl */
2003
1620
  publicUrl: string;
2004
- /** Metadatajson */
2005
- metadataJson?: {
1621
+ /** Metadata */
1622
+ metadata?: {
2006
1623
  [key: string]: unknown;
2007
1624
  } | null;
1625
+ /**
1626
+ * Entries
1627
+ * @default []
1628
+ */
1629
+ entries: string[];
2008
1630
  };
2009
1631
  /**
2010
1632
  * PublishedAssetsResponse
@@ -2037,8 +1659,8 @@ interface components {
2037
1659
  smartRules?: {
2038
1660
  [key: string]: unknown;
2039
1661
  } | null;
2040
- /** Metadatajson */
2041
- metadataJson?: {
1662
+ /** Metadata */
1663
+ metadata?: {
2042
1664
  [key: string]: unknown;
2043
1665
  } | null;
2044
1666
  /** Entrycount */
@@ -2049,21 +1671,35 @@ interface components {
2049
1671
  /**
2050
1672
  * PublishedCollectionSummary
2051
1673
  * @description Summary schema for published collections (for listing).
2052
- *
2053
- * Minimal collection info for entry contexts - only includes
2054
- * essential fields for display and ordering.
2055
1674
  */
2056
1675
  PublishedCollectionSummary: {
2057
1676
  /** Slug */
2058
1677
  slug: string;
2059
1678
  /** Name */
2060
1679
  name: string;
2061
- /** Metadatajson */
2062
- metadataJson?: {
1680
+ /** Description */
1681
+ description?: string | null;
1682
+ /**
1683
+ * Issmart
1684
+ * @default false
1685
+ */
1686
+ isSmart: boolean;
1687
+ /** Smartrules */
1688
+ smartRules?: {
2063
1689
  [key: string]: unknown;
2064
1690
  } | null;
1691
+ /** Metadata */
1692
+ metadata?: {
1693
+ [key: string]: unknown;
1694
+ } | null;
1695
+ /** Entrycount */
1696
+ entryCount: number;
2065
1697
  /** Sortorder */
2066
1698
  sortOrder: number;
1699
+ /** Icon */
1700
+ icon?: string | null;
1701
+ /** Color */
1702
+ color?: string | null;
2067
1703
  };
2068
1704
  /**
2069
1705
  * PublishedCollectionsResponse
@@ -2101,25 +1737,23 @@ interface components {
2101
1737
  summary?: string | null;
2102
1738
  /** Publishedat */
2103
1739
  publishedAt?: string | null;
2104
- /** Status */
2105
- status: string;
2106
1740
  /**
2107
1741
  * Collections
2108
1742
  * @default []
2109
1743
  */
2110
1744
  collections: string[];
2111
1745
  /**
2112
- * Assetslugs
1746
+ * Assets
2113
1747
  * @default []
2114
1748
  */
2115
- assetSlugs: string[];
1749
+ assets: string[];
1750
+ /** Order */
1751
+ order?: number | null;
2116
1752
  /**
2117
- * Resourceslugs
1753
+ * Resources
2118
1754
  * @default []
2119
1755
  */
2120
- resourceSlugs: string[];
2121
- /** Order */
2122
- order?: number | null;
1756
+ resources: string[];
2123
1757
  };
2124
1758
  /**
2125
1759
  * PublishedEntryRead
@@ -2127,9 +1761,6 @@ interface components {
2127
1761
  *
2128
1762
  * Only includes public-facing fields. Excludes all admin metadata,
2129
1763
  * internal fields, and user information.
2130
- *
2131
- * BREAKING CHANGE: content_markdown removed, replaced with data.
2132
- * Entry content is now schema-driven based on entry_type.schema_json.
2133
1764
  */
2134
1765
  PublishedEntryRead: {
2135
1766
  /** Slug */
@@ -2140,14 +1771,12 @@ interface components {
2140
1771
  entryType: string;
2141
1772
  /** Summary */
2142
1773
  summary?: string | null;
2143
- /** Data */
2144
- data: {
2145
- [key: string]: unknown;
2146
- };
1774
+ /** Contentmarkdown */
1775
+ contentMarkdown?: string | null;
2147
1776
  /** Publishedat */
2148
1777
  publishedAt?: string | null;
2149
- /** Metadatajson */
2150
- metadataJson?: {
1778
+ /** Metadata */
1779
+ metadata?: {
2151
1780
  [key: string]: unknown;
2152
1781
  } | null;
2153
1782
  /**
@@ -2168,29 +1797,6 @@ interface components {
2168
1797
  /** Order */
2169
1798
  order?: number | null;
2170
1799
  };
2171
- /**
2172
- * PublishedFormRead
2173
- * @description Schema for published forms in the publishing API.
2174
- *
2175
- * Provides form definition for frontend to render the form.
2176
- * Does not expose internal fields like submissions_count.
2177
- */
2178
- PublishedFormRead: {
2179
- /** Slug */
2180
- slug: string;
2181
- /** Name */
2182
- name: string;
2183
- /** Description */
2184
- description?: string | null;
2185
- /** Formschema */
2186
- formSchema: {
2187
- [key: string]: unknown;
2188
- };
2189
- /** Metadata */
2190
- metadata?: {
2191
- [key: string]: unknown;
2192
- } | null;
2193
- };
2194
1800
  /**
2195
1801
  * PublishedResourceRead
2196
1802
  * @description Schema for published resources in entry context.
@@ -2210,8 +1816,8 @@ interface components {
2210
1816
  url?: string | null;
2211
1817
  /** Externalid */
2212
1818
  externalId?: string | null;
2213
- /** Metadatajson */
2214
- metadataJson?: {
1819
+ /** Metadata */
1820
+ metadata?: {
2215
1821
  [key: string]: unknown;
2216
1822
  } | null;
2217
1823
  /** Role */
@@ -2246,8 +1852,8 @@ interface components {
2246
1852
  url?: string | null;
2247
1853
  /** Externalid */
2248
1854
  externalId?: string | null;
2249
- /** Metadatajson */
2250
- metadataJson?: {
1855
+ /** Metadata */
1856
+ metadata?: {
2251
1857
  [key: string]: unknown;
2252
1858
  } | null;
2253
1859
  /**
@@ -2573,8 +2179,8 @@ interface components {
2573
2179
  social?: {
2574
2180
  [key: string]: unknown;
2575
2181
  } | null;
2576
- /** Metadatajson */
2577
- metadataJson?: {
2182
+ /** Metadata */
2183
+ metadata?: {
2578
2184
  [key: string]: unknown;
2579
2185
  } | null;
2580
2186
  };
@@ -2626,17 +2232,6 @@ interface components {
2626
2232
  /** Data Dir Path */
2627
2233
  data_dir_path: string;
2628
2234
  };
2629
- /**
2630
- * TestEmailRequest
2631
- * @description Request to send a test email.
2632
- */
2633
- TestEmailRequest: {
2634
- /**
2635
- * Recipient Email
2636
- * Format: email
2637
- */
2638
- recipient_email: string;
2639
- };
2640
2235
  /**
2641
2236
  * TokenResponseDelete
2642
2237
  * @description Schema for the response after successfully deleting an API token.
@@ -3258,16 +2853,6 @@ type PlatformWorkspaceMemberUpdate = components['schemas']['WorkspaceMemberUpdat
3258
2853
  */
3259
2854
  type EventLogEntry = components['schemas']['EventLogRead'];
3260
2855
  type EventLogSummary = components['schemas']['EventLogSummary'];
3261
- /**
3262
- * Forms (Platform API - full CRUD)
3263
- */
3264
- type PlatformForm = components['schemas']['FormRead'];
3265
- type PlatformFormCreate = components['schemas']['FormCreate'];
3266
- type PlatformFormUpdate = components['schemas']['FormUpdate'];
3267
- /**
3268
- * Form Submissions (Platform API - read access)
3269
- */
3270
- type PlatformFormSubmission = components['schemas']['FormSubmissionRead'];
3271
2856
 
3272
2857
  /**
3273
2858
  * Entries Module - Platform API
@@ -3397,19 +2982,9 @@ declare class ResourcesModule {
3397
2982
  * CRUD operations and file upload for assets
3398
2983
  */
3399
2984
 
3400
- interface FileUploadOptions {
3401
- /** Maximum file size in bytes (default: 100MB) */
3402
- maxFileSize?: number;
3403
- /** Allowed MIME types (if not provided, all types allowed) */
3404
- allowedMimeTypes?: string[];
3405
- }
3406
2985
  declare class AssetsModule {
3407
2986
  private http;
3408
2987
  constructor(http: HttpClient);
3409
- /**
3410
- * Validate file before upload
3411
- */
3412
- private validateFile;
3413
2988
  /**
3414
2989
  * List all assets
3415
2990
  */
@@ -3423,22 +2998,9 @@ declare class AssetsModule {
3423
2998
  *
3424
2999
  * @param file - The file to upload (File or Blob)
3425
3000
  * @param metadata - Asset metadata (slug, name, altText, description, metadata)
3426
- * @param options - Upload options (file size limits, allowed types)
3427
3001
  * @returns The created asset with extracted metadata
3428
- *
3429
- * @example
3430
- * ```typescript
3431
- * // Upload with default limits (100MB, all types)
3432
- * const asset = await assets.upload(file, { slug: 'my-image', name: 'My Image' });
3433
- *
3434
- * // Upload with restrictions
3435
- * const asset = await assets.upload(file,
3436
- * { slug: 'avatar', name: 'Avatar' },
3437
- * { maxFileSize: 5 * 1024 * 1024, allowedMimeTypes: ['image/*'] }
3438
- * );
3439
- * ```
3440
3002
  */
3441
- upload(file: File | Blob, metadata: PlatformAssetUpload, options?: FileUploadOptions): Promise<PlatformAsset>;
3003
+ upload(file: File | Blob, metadata: PlatformAssetUpload): Promise<PlatformAsset>;
3442
3004
  /**
3443
3005
  * Update an asset (editable fields only: slug, name, altText, description, metadata)
3444
3006
  */
@@ -3447,11 +3009,6 @@ declare class AssetsModule {
3447
3009
  * Delete an asset (removes file from storage and database)
3448
3010
  */
3449
3011
  delete(id: string): Promise<void>;
3450
- /**
3451
- * Get download URL for an asset file
3452
- * Use this to create download links or fetch the file directly
3453
- */
3454
- getDownloadUrl(id: string, baseUrl?: string): string;
3455
3012
  }
3456
3013
 
3457
3014
  /**
@@ -3600,21 +3157,11 @@ interface WorkspaceUpdate {
3600
3157
  name?: string;
3601
3158
  description?: string | null;
3602
3159
  }
3603
- /**
3604
- * Workspace preferences - dynamic key-value store
3605
- * Common keys include: theme, locale, notifications, etc.
3606
- */
3607
3160
  interface WorkspacePreferences {
3608
- theme?: string;
3609
- locale?: string;
3610
- notifications?: boolean;
3611
- [key: string]: unknown;
3161
+ [key: string]: any;
3612
3162
  }
3613
3163
  interface WorkspacePreferencesUpdate {
3614
- theme?: string;
3615
- locale?: string;
3616
- notifications?: boolean;
3617
- [key: string]: unknown;
3164
+ [key: string]: any;
3618
3165
  }
3619
3166
  declare class WorkspacesModule {
3620
3167
  private http;
@@ -3648,13 +3195,6 @@ declare class WorkspacesModule {
3648
3195
  * Delete a workspace (requires SUPER_ADMIN)
3649
3196
  */
3650
3197
  delete(id: string, force?: boolean): Promise<void>;
3651
- /**
3652
- * Export workspace data as JSON (collections, entry types, entries, site config)
3653
- */
3654
- export(options?: {
3655
- includeSystemTypes?: boolean;
3656
- pretty?: boolean;
3657
- }): Promise<Record<string, unknown>>;
3658
3198
  /**
3659
3199
  * Get workspace preferences
3660
3200
  */
@@ -3703,19 +3243,7 @@ declare class InvitesModule {
3703
3243
  delete(tokenId: string): Promise<void>;
3704
3244
  /**
3705
3245
  * Generate invitation URL from a token
3706
- *
3707
- * @param token - Invitation token
3708
- * @param baseUrl - Base URL for the frontend (required in browser environments)
3709
- * @returns Full invitation URL
3710
- *
3711
- * @example
3712
- * ```typescript
3713
- * // Node.js (can use env vars)
3714
- * const url = invites.getInvitationUrl(token);
3715
- *
3716
- * // Browser (must provide baseUrl)
3717
- * const url = invites.getInvitationUrl(token, 'https://app.example.com');
3718
- * ```
3246
+ * Uses MARVIN_FRONTEND_URL for the base URL, falls back to MARVIN_API_URL with common port mappings
3719
3247
  */
3720
3248
  getInvitationUrl(token: string, baseUrl?: string): string;
3721
3249
  }
@@ -3801,10 +3329,6 @@ interface WebhookUpdate {
3801
3329
  declare class WebhooksModule {
3802
3330
  private http;
3803
3331
  constructor(http: HttpClient);
3804
- /**
3805
- * Validate webhook URL to prevent SSRF attacks
3806
- */
3807
- private validateWebhookUrl;
3808
3332
  /**
3809
3333
  * List all webhooks for the current workspace
3810
3334
  */
@@ -3815,12 +3339,10 @@ declare class WebhooksModule {
3815
3339
  get(id: string): Promise<Webhook>;
3816
3340
  /**
3817
3341
  * Create a new webhook
3818
- * Validates URL to prevent SSRF attacks
3819
3342
  */
3820
3343
  create(data: WebhookCreate): Promise<Webhook>;
3821
3344
  /**
3822
3345
  * Update a webhook
3823
- * Validates URL if provided to prevent SSRF attacks
3824
3346
  */
3825
3347
  update(id: string, data: WebhookUpdate): Promise<Webhook>;
3826
3348
  /**
@@ -3900,22 +3422,7 @@ declare class AdminUsersModule {
3900
3422
  */
3901
3423
 
3902
3424
  type AdminAboutInfo = components['schemas']['AdminAboutInfo'];
3903
- /**
3904
- * Email settings returned from API (read-only)
3905
- * Password is never returned for security reasons
3906
- */
3907
3425
  interface EmailSettings {
3908
- host?: string;
3909
- port?: number;
3910
- username?: string;
3911
- from?: string;
3912
- useTls?: boolean;
3913
- }
3914
- /**
3915
- * Email settings for updates (write-only)
3916
- * Password can be provided to update settings
3917
- */
3918
- interface EmailSettingsUpdate {
3919
3426
  host?: string;
3920
3427
  port?: number;
3921
3428
  username?: string;
@@ -3931,18 +3438,6 @@ interface SystemStatistics {
3931
3438
  resources?: number;
3932
3439
  assets?: number;
3933
3440
  }
3934
- interface StartupInfo {
3935
- version: string;
3936
- api_port: number;
3937
- api_docs: boolean;
3938
- database_url: string;
3939
- database_provider: string;
3940
- default_group?: string;
3941
- allow_signup: boolean;
3942
- theme?: string;
3943
- custom_middleware?: string[];
3944
- [key: string]: unknown;
3945
- }
3946
3441
  declare class AdminSystemModule {
3947
3442
  private http;
3948
3443
  constructor(http: HttpClient);
@@ -3959,7 +3454,7 @@ declare class AdminSystemModule {
3959
3454
  /**
3960
3455
  * Get startup information
3961
3456
  */
3962
- getStartupInfo(): Promise<StartupInfo>;
3457
+ getStartupInfo(): Promise<any>;
3963
3458
  /**
3964
3459
  * Get system statistics
3965
3460
  */
@@ -3970,9 +3465,8 @@ declare class AdminSystemModule {
3970
3465
  getEmailSettings(): Promise<EmailSettings>;
3971
3466
  /**
3972
3467
  * Update email settings
3973
- * Note: Password field is write-only and will not be returned in response
3974
3468
  */
3975
- updateEmailSettings(data: EmailSettingsUpdate): Promise<EmailSettings>;
3469
+ updateEmailSettings(data: EmailSettings): Promise<EmailSettings>;
3976
3470
  }
3977
3471
 
3978
3472
  /**
@@ -4230,6 +3724,10 @@ declare class EventLogModule {
4230
3724
  * Authenticated session management (logout, refresh)
4231
3725
  */
4232
3726
 
3727
+ interface AuthToken {
3728
+ accessToken: string;
3729
+ tokenType: string;
3730
+ }
4233
3731
  declare class AuthModule {
4234
3732
  private http;
4235
3733
  constructor(http: HttpClient);
@@ -4286,216 +3784,6 @@ declare class ThemeModule {
4286
3784
  getTheme(): Promise<AppTheme>;
4287
3785
  }
4288
3786
 
4289
- /**
4290
- * Email Templates Module - Platform API
4291
- *
4292
- * Manage workspace email templates
4293
- */
4294
-
4295
- interface EmailTemplateSummary {
4296
- id: string;
4297
- template_type: string;
4298
- group_id: string | null;
4299
- name: string;
4300
- description?: string;
4301
- enabled: boolean;
4302
- created_at: string;
4303
- updated_at: string;
4304
- }
4305
- interface EmailTemplateRead extends EmailTemplateSummary {
4306
- subject: string;
4307
- header_text?: string;
4308
- message_top?: string;
4309
- message_bottom?: string;
4310
- button_text?: string;
4311
- custom_html?: string;
4312
- available_variables?: Record<string, string>;
4313
- }
4314
- interface EmailTemplateCreate {
4315
- template_type: string;
4316
- group_id?: string;
4317
- name: string;
4318
- description?: string;
4319
- subject: string;
4320
- header_text?: string;
4321
- message_top?: string;
4322
- message_bottom?: string;
4323
- button_text?: string;
4324
- custom_html?: string;
4325
- available_variables?: Record<string, string>;
4326
- enabled?: boolean;
4327
- }
4328
- interface EmailTemplateUpdate {
4329
- name?: string;
4330
- description?: string;
4331
- subject?: string;
4332
- header_text?: string;
4333
- message_top?: string;
4334
- message_bottom?: string;
4335
- button_text?: string;
4336
- custom_html?: string;
4337
- available_variables?: Record<string, string>;
4338
- enabled?: boolean;
4339
- }
4340
- interface TestEmailRequest {
4341
- recipient_email: string;
4342
- }
4343
- interface TestEmailResponse {
4344
- message: string;
4345
- }
4346
- /**
4347
- * Email Templates API client for workspace-scoped templates
4348
- */
4349
- declare class EmailTemplatesClient {
4350
- private readonly http;
4351
- constructor(http: HttpClient);
4352
- /**
4353
- * List all email templates for the workspace
4354
- * @param groupId - Workspace ID
4355
- */
4356
- list(groupId: string): Promise<EmailTemplateSummary[]>;
4357
- /**
4358
- * Get a specific email template
4359
- * @param groupId - Workspace ID
4360
- * @param templateId - Template ID
4361
- */
4362
- get(groupId: string, templateId: string): Promise<EmailTemplateRead>;
4363
- /**
4364
- * Create a new email template
4365
- * @param groupId - Workspace ID
4366
- * @param data - Template data
4367
- */
4368
- create(groupId: string, data: EmailTemplateCreate): Promise<EmailTemplateRead>;
4369
- /**
4370
- * Update an email template
4371
- * @param groupId - Workspace ID
4372
- * @param templateId - Template ID
4373
- * @param data - Updated template data
4374
- */
4375
- update(groupId: string, templateId: string, data: EmailTemplateUpdate): Promise<EmailTemplateRead>;
4376
- /**
4377
- * Delete an email template
4378
- * @param groupId - Workspace ID
4379
- * @param templateId - Template ID
4380
- */
4381
- delete(groupId: string, templateId: string): Promise<void>;
4382
- /**
4383
- * Send a test email using a template
4384
- * @param groupId - Workspace ID
4385
- * @param templateId - Template ID
4386
- * @param recipientEmail - Test recipient email address
4387
- */
4388
- sendTest(groupId: string, templateId: string, recipientEmail: string): Promise<TestEmailResponse>;
4389
- }
4390
-
4391
- /**
4392
- * Scheduled Tasks Module - Platform API
4393
- *
4394
- * Manage workspace scheduled task automation
4395
- */
4396
-
4397
- type ScheduledTask = components['schemas']['ScheduledTaskRead'];
4398
- type ScheduledTaskCreate = components['schemas']['ScheduledTaskCreate'];
4399
- type ScheduledTaskUpdate = components['schemas']['ScheduledTaskUpdate'];
4400
- type ScheduledTaskExecutionLog = components['schemas']['ScheduledTaskExecutionLogRead'];
4401
- interface TaskTypeInfo {
4402
- task_type: string;
4403
- name: string;
4404
- description: string;
4405
- config_schema?: any;
4406
- }
4407
- declare class ScheduledTasksModule {
4408
- private http;
4409
- constructor(http: HttpClient);
4410
- /**
4411
- * List all scheduled tasks for the current workspace
4412
- */
4413
- list(): Promise<ScheduledTask[]>;
4414
- /**
4415
- * Get a scheduled task by ID or slug
4416
- */
4417
- get(idOrSlug: string): Promise<ScheduledTask>;
4418
- /**
4419
- * Create a new scheduled task
4420
- */
4421
- create(data: ScheduledTaskCreate): Promise<ScheduledTask>;
4422
- /**
4423
- * Update a scheduled task
4424
- */
4425
- update(idOrSlug: string, data: ScheduledTaskUpdate): Promise<ScheduledTask>;
4426
- /**
4427
- * Delete a scheduled task
4428
- */
4429
- delete(idOrSlug: string): Promise<void>;
4430
- /**
4431
- * Manually trigger task execution (bypass schedule)
4432
- */
4433
- execute(idOrSlug: string): Promise<void>;
4434
- /**
4435
- * Get task execution history
4436
- */
4437
- history(idOrSlug: string, options?: {
4438
- limit?: number;
4439
- }): Promise<ScheduledTaskExecutionLog[]>;
4440
- /**
4441
- * Get available task types
4442
- */
4443
- taskTypes(options?: {
4444
- detailed?: boolean;
4445
- }): Promise<string[] | TaskTypeInfo[]>;
4446
- }
4447
-
4448
- /**
4449
- * Forms Module - Platform API
4450
- *
4451
- * CRUD operations for forms and submissions
4452
- */
4453
-
4454
- declare class FormsModule {
4455
- private http;
4456
- constructor(http: HttpClient);
4457
- /**
4458
- * Validate form submission data
4459
- * - Prevents XSS by checking for script tags
4460
- * - Validates data is a proper object
4461
- * - Checks for reasonable size limits
4462
- */
4463
- private validateFormData;
4464
- /**
4465
- * List all forms
4466
- */
4467
- list(): Promise<PlatformForm[]>;
4468
- /**
4469
- * Get a single form by ID
4470
- */
4471
- get(id: string): Promise<PlatformForm>;
4472
- /**
4473
- * Create a new form
4474
- */
4475
- create(data: PlatformFormCreate): Promise<PlatformForm>;
4476
- /**
4477
- * Update a form
4478
- */
4479
- update(id: string, data: PlatformFormUpdate): Promise<PlatformForm>;
4480
- /**
4481
- * Delete a form
4482
- */
4483
- delete(id: string): Promise<void>;
4484
- /**
4485
- * Get submissions for a form
4486
- */
4487
- getSubmissions(formId: string): Promise<PlatformFormSubmission[]>;
4488
- /**
4489
- * Get a published form by slug (Publishing API - public access)
4490
- */
4491
- getPublishedForm(slug: string): Promise<PlatformForm>;
4492
- /**
4493
- * Submit data to a published form (Publishing API - public access)
4494
- * Validates data before submission to prevent XSS and malicious content
4495
- */
4496
- submitForm(slug: string, data: Record<string, unknown>): Promise<PlatformFormSubmission>;
4497
- }
4498
-
4499
3787
  /**
4500
3788
  * Platform API Client
4501
3789
  *
@@ -4503,14 +3791,10 @@ declare class FormsModule {
4503
3791
  */
4504
3792
 
4505
3793
  interface PlatformClientConfig {
4506
- apiUrl?: string;
3794
+ apiUrl: string;
4507
3795
  userToken?: string;
4508
3796
  credentials?: RequestCredentials;
4509
3797
  }
4510
- /**
4511
- * Create Platform API config from environment
4512
- */
4513
- declare function createPlatformConfigFromEnv(overrides?: Partial<PlatformClientConfig>): PlatformClientConfig;
4514
3798
  declare class PlatformClient extends HttpClient {
4515
3799
  entries: EntriesModule;
4516
3800
  collections: CollectionsModule;
@@ -4528,9 +3812,6 @@ declare class PlatformClient extends HttpClient {
4528
3812
  eventLog: EventLogModule;
4529
3813
  session: AuthModule;
4530
3814
  theme: ThemeModule;
4531
- emailTemplates: EmailTemplatesClient;
4532
- scheduledTasks: ScheduledTasksModule;
4533
- forms: FormsModule;
4534
3815
  adminUsers: AdminUsersModule;
4535
3816
  adminSystem: AdminSystemModule;
4536
3817
  adminMaintenance: AdminMaintenanceModule;
@@ -4538,23 +3819,7 @@ declare class PlatformClient extends HttpClient {
4538
3819
  }
4539
3820
  /**
4540
3821
  * Create a Platform API client
4541
- *
4542
- * @example
4543
- * ```ts
4544
- * // From environment (MARVIN_API_URL, MARVIN_USER_TOKEN)
4545
- * const platform = createPlatformClient();
4546
- *
4547
- * // With explicit user token (for programmatic admin)
4548
- * const platform = createPlatformClient({
4549
- * userToken: 'user-token-here'
4550
- * });
4551
- *
4552
- * // Browser with session cookies (admin UI)
4553
- * const platform = createPlatformClient({
4554
- * credentials: 'include'
4555
- * });
4556
- * ```
4557
3822
  */
4558
- declare function createPlatformClient(config?: Partial<PlatformClientConfig>): PlatformClient;
3823
+ declare function createPlatformClient(config: PlatformClientConfig): PlatformClient;
4559
3824
 
4560
- export { APIClientsModule, type AdminAboutInfo, AdminMaintenanceModule, AdminSystemModule, AdminUsersModule, type ApiToken, type ApiTokenCreate, type ApiTokenWithToken, type AppTheme, AssetsModule, AuthModule, CollectionsModule, type EmailInvitationRequest, type EmailSettings, type EmailSettingsUpdate, type EmailTemplateCreate, type EmailTemplateRead, type EmailTemplateSummary, type EmailTemplateUpdate, EmailTemplatesClient, EntriesModule, EntryTypesModule, type EventLogEntry, EventLogModule, type EventLogQueryParams, type EventLogSummary, type EventOption, EventsModule, FormsModule, type InviteTokenCreate, type InviteTokenPagination, type InviteTokenSummary, InvitesModule, type MaintenanceStorageDetails, type MaintenanceSummary, type Notification, type NotificationCreate, type NotificationUpdate, NotificationsModule, type PasswordChange, type PasswordResetTokenRequest, type PasswordResetTokenResponse, type PlatformAPIClient, type PlatformAPIClientCreate, type PlatformAPIClientUpdate, type PlatformAPIClientWithToken, type PlatformAsset, type PlatformAssetUpdate, PlatformClient, type PlatformClientConfig, type PlatformCollection, type PlatformCollectionCreate, type PlatformCollectionUpdate, type PlatformEntry, type PlatformEntryCreate, type PlatformEntryType, type PlatformEntryUpdate, type PlatformForm, type PlatformFormCreate, type PlatformFormSubmission, type PlatformFormUpdate, type PlatformResource, type PlatformResourceCreate, type PlatformResourceUpdate, type PlatformWorkspaceMember, type PlatformWorkspaceMemberCreate, type PlatformWorkspaceMemberUpdate, ResourcesModule, type ScheduledTask, type ScheduledTaskCreate, type ScheduledTaskExecutionLog, type ScheduledTaskUpdate, ScheduledTasksModule, type StartupInfo, type SystemStatistics, type TaskTypeInfo, type TestEmailRequest, type TestEmailResponse, ThemeModule, type UnlockUserRequest, type User, type UserCreate, UserModule, type UserPagination, type UserProfile, type UserProfileUpdate, type UserSummary, type UserUpdate, type Webhook, type WebhookCreate, type WebhookMethod, type WebhookPagination, type WebhookUpdate, WebhooksModule, type Workspace, type WorkspaceActivationRequest, type WorkspaceCreate, WorkspaceMembersModule, type WorkspacePreferences, type WorkspacePreferencesUpdate, type WorkspaceUpdate, type WorkspaceWithMembership, WorkspacesModule, createPlatformClient, createPlatformConfigFromEnv };
3825
+ export { APIClientsModule, type AdminAboutInfo, AdminMaintenanceModule, AdminSystemModule, AdminUsersModule, type ApiToken, type ApiTokenCreate, type ApiTokenWithToken, type AppTheme, AssetsModule, AuthModule, type AuthToken, CollectionsModule, type EmailInvitationRequest, type EmailSettings, EntriesModule, EntryTypesModule, type EventLogEntry, EventLogModule, type EventLogQueryParams, type EventLogSummary, type EventOption, EventsModule, type InviteTokenCreate, type InviteTokenPagination, type InviteTokenSummary, InvitesModule, type MaintenanceStorageDetails, type MaintenanceSummary, type Notification, type NotificationCreate, type NotificationUpdate, NotificationsModule, type PasswordChange, type PasswordResetTokenRequest, type PasswordResetTokenResponse, type PlatformAPIClient, type PlatformAPIClientCreate, type PlatformAPIClientUpdate, type PlatformAPIClientWithToken, type PlatformAsset, type PlatformAssetUpdate, PlatformClient, type PlatformClientConfig, type PlatformCollection, type PlatformCollectionCreate, type PlatformCollectionUpdate, type PlatformEntry, type PlatformEntryCreate, type PlatformEntryType, type PlatformEntryUpdate, type PlatformResource, type PlatformResourceCreate, type PlatformResourceUpdate, type PlatformWorkspaceMember, type PlatformWorkspaceMemberCreate, type PlatformWorkspaceMemberUpdate, ResourcesModule, type SystemStatistics, ThemeModule, type UnlockUserRequest, type User, type UserCreate, UserModule, type UserPagination, type UserProfile, type UserProfileUpdate, type UserSummary, type UserUpdate, type Webhook, type WebhookCreate, type WebhookMethod, type WebhookPagination, type WebhookUpdate, WebhooksModule, type Workspace, type WorkspaceActivationRequest, type WorkspaceCreate, WorkspaceMembersModule, type WorkspacePreferences, type WorkspacePreferencesUpdate, type WorkspaceUpdate, type WorkspaceWithMembership, WorkspacesModule, createPlatformClient };