@remit/electrodb-entities 0.0.5 → 0.0.7

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/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FilterAnchor = exports.MessageLabel = exports.Label = exports.BodyPartContent = exports.BodyPartStorage = exports.RawMessageStorage = exports.BodyPartParameter = exports.Envelope = exports.MessageFlagPush = exports.MessagePlacementMove = exports.MessageFlag = exports.MailboxLock = exports.MailboxFlag = exports.MailboxSpecialUseEntry = exports.MailboxAttributeEntry = exports.AccountSetting = exports.EnvelopeAddress = exports.MessageReference = exports.BodyPart = exports.Message = exports.Address = exports.OutboxMessage = exports.ThreadMessage = exports.OrganizeJobRequest = exports.Filter = exports.Mailbox = exports.Account = exports.AccountConfig = exports.Quarantine = exports.AccountExportRequest = void 0;
3
+ exports.FilterAnchor = exports.MessageLabel = exports.BodyPartContent = exports.BodyPartStorage = exports.RawMessageStorage = exports.BodyPartParameter = exports.Envelope = exports.MessageFlagPush = exports.MessagePlacementMove = exports.MessageFlag = exports.MailboxLock = exports.MailboxFlag = exports.MailboxSpecialUseEntry = exports.MailboxAttributeEntry = exports.AccountSetting = exports.EnvelopeAddress = exports.MessageReference = exports.BodyPart = exports.Message = exports.Address = exports.OutboxMessage = exports.ThreadMessage = exports.OrganizeJobRequest = exports.Label = exports.Filter = exports.Mailbox = exports.Account = exports.AccountConfig = exports.Quarantine = exports.AccountExportRequest = void 0;
4
4
  const electrodb_1 = require("electrodb");
5
5
  exports.AccountExportRequest = {
6
6
  attributes: {
@@ -1051,7 +1051,7 @@ exports.Filter = {
1051
1051
  type: "map",
1052
1052
  properties: {
1053
1053
  field: {
1054
- type: ["From", "Subject", "HasWords"],
1054
+ type: ["From", "Subject", "HasWords", "ListId", "FromDomain"],
1055
1055
  required: true
1056
1056
  },
1057
1057
  value: {
@@ -1116,6 +1116,97 @@ exports.Filter = {
1116
1116
  version: "1"
1117
1117
  }
1118
1118
  };
1119
+ exports.Label = {
1120
+ attributes: {
1121
+ labelId: {
1122
+ type: "string",
1123
+ required: true,
1124
+ validate: value => {
1125
+ if (typeof value === "string" && value.length < 25)
1126
+ throw new Error("'labelId' must be at least 25 characters");
1127
+ if (typeof value === "string" && value.length > 25)
1128
+ throw new Error("'labelId' must be at most 25 characters");
1129
+ return true;
1130
+ }
1131
+ },
1132
+ accountConfigId: {
1133
+ type: "string",
1134
+ required: true,
1135
+ validate: value => {
1136
+ if (typeof value === "string" && value.length < 25)
1137
+ throw new Error("'accountConfigId' must be at least 25 characters");
1138
+ if (typeof value === "string" && value.length > 25)
1139
+ throw new Error("'accountConfigId' must be at most 25 characters");
1140
+ return true;
1141
+ }
1142
+ },
1143
+ name: {
1144
+ type: "string",
1145
+ required: true,
1146
+ validate: value => {
1147
+ if (typeof value === "string" && value.length > 140)
1148
+ throw new Error("'name' must be at most 140 characters");
1149
+ return true;
1150
+ }
1151
+ },
1152
+ normalizedName: {
1153
+ type: "string",
1154
+ required: true,
1155
+ validate: value => {
1156
+ if (typeof value === "string" && value.length > 140)
1157
+ throw new Error("'normalizedName' must be at most 140 characters");
1158
+ return true;
1159
+ }
1160
+ },
1161
+ color: {
1162
+ type: ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"],
1163
+ required: true,
1164
+ default: "Default"
1165
+ },
1166
+ createdAt: {
1167
+ type: "number",
1168
+ readOnly: true,
1169
+ required: true,
1170
+ default: () => Date.now(),
1171
+ set: () => Date.now()
1172
+ },
1173
+ updatedAt: {
1174
+ type: "number",
1175
+ watch: "*",
1176
+ required: true,
1177
+ default: () => Date.now(),
1178
+ set: () => Date.now()
1179
+ }
1180
+ },
1181
+ indexes: {
1182
+ byNormalizedName: {
1183
+ pk: {
1184
+ field: "gsi0pk",
1185
+ composite: ["accountConfigId"]
1186
+ },
1187
+ sk: {
1188
+ field: "gsi0sk",
1189
+ composite: ["normalizedName"]
1190
+ },
1191
+ index: "gsi0"
1192
+ },
1193
+ Label: {
1194
+ pk: {
1195
+ field: "pk",
1196
+ composite: ["accountConfigId"]
1197
+ },
1198
+ sk: {
1199
+ field: "sk",
1200
+ composite: ["labelId"]
1201
+ }
1202
+ }
1203
+ },
1204
+ model: {
1205
+ entity: "label",
1206
+ service: "remit",
1207
+ version: "1"
1208
+ }
1209
+ };
1119
1210
  exports.OrganizeJobRequest = {
1120
1211
  attributes: {
1121
1212
  organizeJobId: {
@@ -1165,7 +1256,7 @@ exports.OrganizeJobRequest = {
1165
1256
  type: "map",
1166
1257
  properties: {
1167
1258
  field: {
1168
- type: ["From", "Subject", "HasWords"],
1259
+ type: ["From", "Subject", "HasWords", "ListId", "FromDomain"],
1169
1260
  required: true
1170
1261
  },
1171
1262
  value: {
@@ -1383,6 +1474,15 @@ exports.ThreadMessage = {
1383
1474
  type: "string",
1384
1475
  required: false
1385
1476
  },
1477
+ listId: {
1478
+ type: "string",
1479
+ required: false,
1480
+ validate: value => {
1481
+ if (typeof value === "string" && value.length > 256)
1482
+ throw new Error("'listId' must be at most 256 characters");
1483
+ return true;
1484
+ }
1485
+ },
1386
1486
  internalDate: {
1387
1487
  type: "number",
1388
1488
  required: true,
@@ -3970,97 +4070,6 @@ exports.BodyPartContent = {
3970
4070
  version: "1"
3971
4071
  }
3972
4072
  };
3973
- exports.Label = {
3974
- attributes: {
3975
- labelId: {
3976
- type: "string",
3977
- required: true,
3978
- validate: value => {
3979
- if (typeof value === "string" && value.length < 25)
3980
- throw new Error("'labelId' must be at least 25 characters");
3981
- if (typeof value === "string" && value.length > 25)
3982
- throw new Error("'labelId' must be at most 25 characters");
3983
- return true;
3984
- }
3985
- },
3986
- accountConfigId: {
3987
- type: "string",
3988
- required: true,
3989
- validate: value => {
3990
- if (typeof value === "string" && value.length < 25)
3991
- throw new Error("'accountConfigId' must be at least 25 characters");
3992
- if (typeof value === "string" && value.length > 25)
3993
- throw new Error("'accountConfigId' must be at most 25 characters");
3994
- return true;
3995
- }
3996
- },
3997
- name: {
3998
- type: "string",
3999
- required: true,
4000
- validate: value => {
4001
- if (typeof value === "string" && value.length > 140)
4002
- throw new Error("'name' must be at most 140 characters");
4003
- return true;
4004
- }
4005
- },
4006
- normalizedName: {
4007
- type: "string",
4008
- required: true,
4009
- validate: value => {
4010
- if (typeof value === "string" && value.length > 140)
4011
- throw new Error("'normalizedName' must be at most 140 characters");
4012
- return true;
4013
- }
4014
- },
4015
- color: {
4016
- type: ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"],
4017
- required: true,
4018
- default: "Default"
4019
- },
4020
- createdAt: {
4021
- type: "number",
4022
- readOnly: true,
4023
- required: true,
4024
- default: () => Date.now(),
4025
- set: () => Date.now()
4026
- },
4027
- updatedAt: {
4028
- type: "number",
4029
- watch: "*",
4030
- required: true,
4031
- default: () => Date.now(),
4032
- set: () => Date.now()
4033
- }
4034
- },
4035
- indexes: {
4036
- byNormalizedName: {
4037
- pk: {
4038
- field: "gsi0pk",
4039
- composite: ["accountConfigId"]
4040
- },
4041
- sk: {
4042
- field: "gsi0sk",
4043
- composite: ["normalizedName"]
4044
- },
4045
- index: "gsi0"
4046
- },
4047
- Label: {
4048
- pk: {
4049
- field: "pk",
4050
- composite: ["accountConfigId"]
4051
- },
4052
- sk: {
4053
- field: "sk",
4054
- composite: ["labelId"]
4055
- }
4056
- }
4057
- },
4058
- model: {
4059
- entity: "label",
4060
- service: "remit",
4061
- version: "1"
4062
- }
4063
- };
4064
4073
  exports.MessageLabel = {
4065
4074
  attributes: {
4066
4075
  messageLabelId: {
package/index.d.cts CHANGED
@@ -763,7 +763,7 @@ export declare const Filter: {
763
763
  readonly type: "map";
764
764
  readonly properties: {
765
765
  readonly field: {
766
- readonly type: readonly ["From", "Subject", "HasWords"];
766
+ readonly type: readonly ["From", "Subject", "HasWords", "ListId", "FromDomain"];
767
767
  readonly required: true;
768
768
  };
769
769
  readonly value: {
@@ -828,6 +828,77 @@ export declare const Filter: {
828
828
  readonly version: "1";
829
829
  };
830
830
  };
831
+ export declare const Label: {
832
+ readonly attributes: {
833
+ readonly labelId: {
834
+ readonly type: "string";
835
+ readonly required: true;
836
+ readonly validate: (value: unknown) => boolean;
837
+ };
838
+ readonly accountConfigId: {
839
+ readonly type: "string";
840
+ readonly required: true;
841
+ readonly validate: (value: unknown) => boolean;
842
+ };
843
+ readonly name: {
844
+ readonly type: "string";
845
+ readonly required: true;
846
+ readonly validate: (value: unknown) => boolean;
847
+ };
848
+ readonly normalizedName: {
849
+ readonly type: "string";
850
+ readonly required: true;
851
+ readonly validate: (value: unknown) => boolean;
852
+ };
853
+ readonly color: {
854
+ readonly type: readonly ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"];
855
+ readonly required: true;
856
+ readonly default: "Default";
857
+ };
858
+ readonly createdAt: {
859
+ readonly type: "number";
860
+ readonly readOnly: true;
861
+ readonly required: true;
862
+ readonly default: () => any;
863
+ readonly set: () => any;
864
+ };
865
+ readonly updatedAt: {
866
+ readonly type: "number";
867
+ readonly watch: "*";
868
+ readonly required: true;
869
+ readonly default: () => any;
870
+ readonly set: () => any;
871
+ };
872
+ };
873
+ readonly indexes: {
874
+ readonly byNormalizedName: {
875
+ readonly pk: {
876
+ readonly field: "gsi0pk";
877
+ readonly composite: readonly ["accountConfigId"];
878
+ };
879
+ readonly sk: {
880
+ readonly field: "gsi0sk";
881
+ readonly composite: readonly ["normalizedName"];
882
+ };
883
+ readonly index: "gsi0";
884
+ };
885
+ readonly Label: {
886
+ readonly pk: {
887
+ readonly field: "pk";
888
+ readonly composite: readonly ["accountConfigId"];
889
+ };
890
+ readonly sk: {
891
+ readonly field: "sk";
892
+ readonly composite: readonly ["labelId"];
893
+ };
894
+ };
895
+ };
896
+ readonly model: {
897
+ readonly entity: "label";
898
+ readonly service: "remit";
899
+ readonly version: "1";
900
+ };
901
+ };
831
902
  export declare const OrganizeJobRequest: {
832
903
  readonly attributes: {
833
904
  readonly organizeJobId: {
@@ -865,7 +936,7 @@ export declare const OrganizeJobRequest: {
865
936
  readonly type: "map";
866
937
  readonly properties: {
867
938
  readonly field: {
868
- readonly type: readonly ["From", "Subject", "HasWords"];
939
+ readonly type: readonly ["From", "Subject", "HasWords", "ListId", "FromDomain"];
869
940
  readonly required: true;
870
941
  };
871
942
  readonly value: {
@@ -1021,6 +1092,11 @@ export declare const ThreadMessage: {
1021
1092
  readonly type: "string";
1022
1093
  readonly required: false;
1023
1094
  };
1095
+ readonly listId: {
1096
+ readonly type: "string";
1097
+ readonly required: false;
1098
+ readonly validate: (value: unknown) => boolean;
1099
+ };
1024
1100
  readonly internalDate: {
1025
1101
  readonly type: "number";
1026
1102
  readonly required: true;
@@ -3114,77 +3190,6 @@ export declare const BodyPartContent: {
3114
3190
  readonly version: "1";
3115
3191
  };
3116
3192
  };
3117
- export declare const Label: {
3118
- readonly attributes: {
3119
- readonly labelId: {
3120
- readonly type: "string";
3121
- readonly required: true;
3122
- readonly validate: (value: unknown) => boolean;
3123
- };
3124
- readonly accountConfigId: {
3125
- readonly type: "string";
3126
- readonly required: true;
3127
- readonly validate: (value: unknown) => boolean;
3128
- };
3129
- readonly name: {
3130
- readonly type: "string";
3131
- readonly required: true;
3132
- readonly validate: (value: unknown) => boolean;
3133
- };
3134
- readonly normalizedName: {
3135
- readonly type: "string";
3136
- readonly required: true;
3137
- readonly validate: (value: unknown) => boolean;
3138
- };
3139
- readonly color: {
3140
- readonly type: readonly ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"];
3141
- readonly required: true;
3142
- readonly default: "Default";
3143
- };
3144
- readonly createdAt: {
3145
- readonly type: "number";
3146
- readonly readOnly: true;
3147
- readonly required: true;
3148
- readonly default: () => any;
3149
- readonly set: () => any;
3150
- };
3151
- readonly updatedAt: {
3152
- readonly type: "number";
3153
- readonly watch: "*";
3154
- readonly required: true;
3155
- readonly default: () => any;
3156
- readonly set: () => any;
3157
- };
3158
- };
3159
- readonly indexes: {
3160
- readonly byNormalizedName: {
3161
- readonly pk: {
3162
- readonly field: "gsi0pk";
3163
- readonly composite: readonly ["accountConfigId"];
3164
- };
3165
- readonly sk: {
3166
- readonly field: "gsi0sk";
3167
- readonly composite: readonly ["normalizedName"];
3168
- };
3169
- readonly index: "gsi0";
3170
- };
3171
- readonly Label: {
3172
- readonly pk: {
3173
- readonly field: "pk";
3174
- readonly composite: readonly ["accountConfigId"];
3175
- };
3176
- readonly sk: {
3177
- readonly field: "sk";
3178
- readonly composite: readonly ["labelId"];
3179
- };
3180
- };
3181
- };
3182
- readonly model: {
3183
- readonly entity: "label";
3184
- readonly service: "remit";
3185
- readonly version: "1";
3186
- };
3187
- };
3188
3193
  export declare const MessageLabel: {
3189
3194
  readonly attributes: {
3190
3195
  readonly messageLabelId: {
package/index.d.mts CHANGED
@@ -763,7 +763,7 @@ export declare const Filter: {
763
763
  readonly type: "map";
764
764
  readonly properties: {
765
765
  readonly field: {
766
- readonly type: readonly ["From", "Subject", "HasWords"];
766
+ readonly type: readonly ["From", "Subject", "HasWords", "ListId", "FromDomain"];
767
767
  readonly required: true;
768
768
  };
769
769
  readonly value: {
@@ -828,6 +828,77 @@ export declare const Filter: {
828
828
  readonly version: "1";
829
829
  };
830
830
  };
831
+ export declare const Label: {
832
+ readonly attributes: {
833
+ readonly labelId: {
834
+ readonly type: "string";
835
+ readonly required: true;
836
+ readonly validate: (value: unknown) => boolean;
837
+ };
838
+ readonly accountConfigId: {
839
+ readonly type: "string";
840
+ readonly required: true;
841
+ readonly validate: (value: unknown) => boolean;
842
+ };
843
+ readonly name: {
844
+ readonly type: "string";
845
+ readonly required: true;
846
+ readonly validate: (value: unknown) => boolean;
847
+ };
848
+ readonly normalizedName: {
849
+ readonly type: "string";
850
+ readonly required: true;
851
+ readonly validate: (value: unknown) => boolean;
852
+ };
853
+ readonly color: {
854
+ readonly type: readonly ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"];
855
+ readonly required: true;
856
+ readonly default: "Default";
857
+ };
858
+ readonly createdAt: {
859
+ readonly type: "number";
860
+ readonly readOnly: true;
861
+ readonly required: true;
862
+ readonly default: () => any;
863
+ readonly set: () => any;
864
+ };
865
+ readonly updatedAt: {
866
+ readonly type: "number";
867
+ readonly watch: "*";
868
+ readonly required: true;
869
+ readonly default: () => any;
870
+ readonly set: () => any;
871
+ };
872
+ };
873
+ readonly indexes: {
874
+ readonly byNormalizedName: {
875
+ readonly pk: {
876
+ readonly field: "gsi0pk";
877
+ readonly composite: readonly ["accountConfigId"];
878
+ };
879
+ readonly sk: {
880
+ readonly field: "gsi0sk";
881
+ readonly composite: readonly ["normalizedName"];
882
+ };
883
+ readonly index: "gsi0";
884
+ };
885
+ readonly Label: {
886
+ readonly pk: {
887
+ readonly field: "pk";
888
+ readonly composite: readonly ["accountConfigId"];
889
+ };
890
+ readonly sk: {
891
+ readonly field: "sk";
892
+ readonly composite: readonly ["labelId"];
893
+ };
894
+ };
895
+ };
896
+ readonly model: {
897
+ readonly entity: "label";
898
+ readonly service: "remit";
899
+ readonly version: "1";
900
+ };
901
+ };
831
902
  export declare const OrganizeJobRequest: {
832
903
  readonly attributes: {
833
904
  readonly organizeJobId: {
@@ -865,7 +936,7 @@ export declare const OrganizeJobRequest: {
865
936
  readonly type: "map";
866
937
  readonly properties: {
867
938
  readonly field: {
868
- readonly type: readonly ["From", "Subject", "HasWords"];
939
+ readonly type: readonly ["From", "Subject", "HasWords", "ListId", "FromDomain"];
869
940
  readonly required: true;
870
941
  };
871
942
  readonly value: {
@@ -1021,6 +1092,11 @@ export declare const ThreadMessage: {
1021
1092
  readonly type: "string";
1022
1093
  readonly required: false;
1023
1094
  };
1095
+ readonly listId: {
1096
+ readonly type: "string";
1097
+ readonly required: false;
1098
+ readonly validate: (value: unknown) => boolean;
1099
+ };
1024
1100
  readonly internalDate: {
1025
1101
  readonly type: "number";
1026
1102
  readonly required: true;
@@ -3114,77 +3190,6 @@ export declare const BodyPartContent: {
3114
3190
  readonly version: "1";
3115
3191
  };
3116
3192
  };
3117
- export declare const Label: {
3118
- readonly attributes: {
3119
- readonly labelId: {
3120
- readonly type: "string";
3121
- readonly required: true;
3122
- readonly validate: (value: unknown) => boolean;
3123
- };
3124
- readonly accountConfigId: {
3125
- readonly type: "string";
3126
- readonly required: true;
3127
- readonly validate: (value: unknown) => boolean;
3128
- };
3129
- readonly name: {
3130
- readonly type: "string";
3131
- readonly required: true;
3132
- readonly validate: (value: unknown) => boolean;
3133
- };
3134
- readonly normalizedName: {
3135
- readonly type: "string";
3136
- readonly required: true;
3137
- readonly validate: (value: unknown) => boolean;
3138
- };
3139
- readonly color: {
3140
- readonly type: readonly ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"];
3141
- readonly required: true;
3142
- readonly default: "Default";
3143
- };
3144
- readonly createdAt: {
3145
- readonly type: "number";
3146
- readonly readOnly: true;
3147
- readonly required: true;
3148
- readonly default: () => any;
3149
- readonly set: () => any;
3150
- };
3151
- readonly updatedAt: {
3152
- readonly type: "number";
3153
- readonly watch: "*";
3154
- readonly required: true;
3155
- readonly default: () => any;
3156
- readonly set: () => any;
3157
- };
3158
- };
3159
- readonly indexes: {
3160
- readonly byNormalizedName: {
3161
- readonly pk: {
3162
- readonly field: "gsi0pk";
3163
- readonly composite: readonly ["accountConfigId"];
3164
- };
3165
- readonly sk: {
3166
- readonly field: "gsi0sk";
3167
- readonly composite: readonly ["normalizedName"];
3168
- };
3169
- readonly index: "gsi0";
3170
- };
3171
- readonly Label: {
3172
- readonly pk: {
3173
- readonly field: "pk";
3174
- readonly composite: readonly ["accountConfigId"];
3175
- };
3176
- readonly sk: {
3177
- readonly field: "sk";
3178
- readonly composite: readonly ["labelId"];
3179
- };
3180
- };
3181
- };
3182
- readonly model: {
3183
- readonly entity: "label";
3184
- readonly service: "remit";
3185
- readonly version: "1";
3186
- };
3187
- };
3188
3193
  export declare const MessageLabel: {
3189
3194
  readonly attributes: {
3190
3195
  readonly messageLabelId: {
package/index.d.ts CHANGED
@@ -763,7 +763,7 @@ export declare const Filter: {
763
763
  readonly type: "map";
764
764
  readonly properties: {
765
765
  readonly field: {
766
- readonly type: readonly ["From", "Subject", "HasWords"];
766
+ readonly type: readonly ["From", "Subject", "HasWords", "ListId", "FromDomain"];
767
767
  readonly required: true;
768
768
  };
769
769
  readonly value: {
@@ -828,6 +828,77 @@ export declare const Filter: {
828
828
  readonly version: "1";
829
829
  };
830
830
  };
831
+ export declare const Label: {
832
+ readonly attributes: {
833
+ readonly labelId: {
834
+ readonly type: "string";
835
+ readonly required: true;
836
+ readonly validate: (value: unknown) => boolean;
837
+ };
838
+ readonly accountConfigId: {
839
+ readonly type: "string";
840
+ readonly required: true;
841
+ readonly validate: (value: unknown) => boolean;
842
+ };
843
+ readonly name: {
844
+ readonly type: "string";
845
+ readonly required: true;
846
+ readonly validate: (value: unknown) => boolean;
847
+ };
848
+ readonly normalizedName: {
849
+ readonly type: "string";
850
+ readonly required: true;
851
+ readonly validate: (value: unknown) => boolean;
852
+ };
853
+ readonly color: {
854
+ readonly type: readonly ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"];
855
+ readonly required: true;
856
+ readonly default: "Default";
857
+ };
858
+ readonly createdAt: {
859
+ readonly type: "number";
860
+ readonly readOnly: true;
861
+ readonly required: true;
862
+ readonly default: () => any;
863
+ readonly set: () => any;
864
+ };
865
+ readonly updatedAt: {
866
+ readonly type: "number";
867
+ readonly watch: "*";
868
+ readonly required: true;
869
+ readonly default: () => any;
870
+ readonly set: () => any;
871
+ };
872
+ };
873
+ readonly indexes: {
874
+ readonly byNormalizedName: {
875
+ readonly pk: {
876
+ readonly field: "gsi0pk";
877
+ readonly composite: readonly ["accountConfigId"];
878
+ };
879
+ readonly sk: {
880
+ readonly field: "gsi0sk";
881
+ readonly composite: readonly ["normalizedName"];
882
+ };
883
+ readonly index: "gsi0";
884
+ };
885
+ readonly Label: {
886
+ readonly pk: {
887
+ readonly field: "pk";
888
+ readonly composite: readonly ["accountConfigId"];
889
+ };
890
+ readonly sk: {
891
+ readonly field: "sk";
892
+ readonly composite: readonly ["labelId"];
893
+ };
894
+ };
895
+ };
896
+ readonly model: {
897
+ readonly entity: "label";
898
+ readonly service: "remit";
899
+ readonly version: "1";
900
+ };
901
+ };
831
902
  export declare const OrganizeJobRequest: {
832
903
  readonly attributes: {
833
904
  readonly organizeJobId: {
@@ -865,7 +936,7 @@ export declare const OrganizeJobRequest: {
865
936
  readonly type: "map";
866
937
  readonly properties: {
867
938
  readonly field: {
868
- readonly type: readonly ["From", "Subject", "HasWords"];
939
+ readonly type: readonly ["From", "Subject", "HasWords", "ListId", "FromDomain"];
869
940
  readonly required: true;
870
941
  };
871
942
  readonly value: {
@@ -1021,6 +1092,11 @@ export declare const ThreadMessage: {
1021
1092
  readonly type: "string";
1022
1093
  readonly required: false;
1023
1094
  };
1095
+ readonly listId: {
1096
+ readonly type: "string";
1097
+ readonly required: false;
1098
+ readonly validate: (value: unknown) => boolean;
1099
+ };
1024
1100
  readonly internalDate: {
1025
1101
  readonly type: "number";
1026
1102
  readonly required: true;
@@ -3114,77 +3190,6 @@ export declare const BodyPartContent: {
3114
3190
  readonly version: "1";
3115
3191
  };
3116
3192
  };
3117
- export declare const Label: {
3118
- readonly attributes: {
3119
- readonly labelId: {
3120
- readonly type: "string";
3121
- readonly required: true;
3122
- readonly validate: (value: unknown) => boolean;
3123
- };
3124
- readonly accountConfigId: {
3125
- readonly type: "string";
3126
- readonly required: true;
3127
- readonly validate: (value: unknown) => boolean;
3128
- };
3129
- readonly name: {
3130
- readonly type: "string";
3131
- readonly required: true;
3132
- readonly validate: (value: unknown) => boolean;
3133
- };
3134
- readonly normalizedName: {
3135
- readonly type: "string";
3136
- readonly required: true;
3137
- readonly validate: (value: unknown) => boolean;
3138
- };
3139
- readonly color: {
3140
- readonly type: readonly ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"];
3141
- readonly required: true;
3142
- readonly default: "Default";
3143
- };
3144
- readonly createdAt: {
3145
- readonly type: "number";
3146
- readonly readOnly: true;
3147
- readonly required: true;
3148
- readonly default: () => any;
3149
- readonly set: () => any;
3150
- };
3151
- readonly updatedAt: {
3152
- readonly type: "number";
3153
- readonly watch: "*";
3154
- readonly required: true;
3155
- readonly default: () => any;
3156
- readonly set: () => any;
3157
- };
3158
- };
3159
- readonly indexes: {
3160
- readonly byNormalizedName: {
3161
- readonly pk: {
3162
- readonly field: "gsi0pk";
3163
- readonly composite: readonly ["accountConfigId"];
3164
- };
3165
- readonly sk: {
3166
- readonly field: "gsi0sk";
3167
- readonly composite: readonly ["normalizedName"];
3168
- };
3169
- readonly index: "gsi0";
3170
- };
3171
- readonly Label: {
3172
- readonly pk: {
3173
- readonly field: "pk";
3174
- readonly composite: readonly ["accountConfigId"];
3175
- };
3176
- readonly sk: {
3177
- readonly field: "sk";
3178
- readonly composite: readonly ["labelId"];
3179
- };
3180
- };
3181
- };
3182
- readonly model: {
3183
- readonly entity: "label";
3184
- readonly service: "remit";
3185
- readonly version: "1";
3186
- };
3187
- };
3188
3193
  export declare const MessageLabel: {
3189
3194
  readonly attributes: {
3190
3195
  readonly messageLabelId: {
package/index.mjs CHANGED
@@ -1048,7 +1048,7 @@ export const Filter = {
1048
1048
  type: "map",
1049
1049
  properties: {
1050
1050
  field: {
1051
- type: ["From", "Subject", "HasWords"],
1051
+ type: ["From", "Subject", "HasWords", "ListId", "FromDomain"],
1052
1052
  required: true
1053
1053
  },
1054
1054
  value: {
@@ -1113,6 +1113,97 @@ export const Filter = {
1113
1113
  version: "1"
1114
1114
  }
1115
1115
  };
1116
+ export const Label = {
1117
+ attributes: {
1118
+ labelId: {
1119
+ type: "string",
1120
+ required: true,
1121
+ validate: value => {
1122
+ if (typeof value === "string" && value.length < 25)
1123
+ throw new Error("'labelId' must be at least 25 characters");
1124
+ if (typeof value === "string" && value.length > 25)
1125
+ throw new Error("'labelId' must be at most 25 characters");
1126
+ return true;
1127
+ }
1128
+ },
1129
+ accountConfigId: {
1130
+ type: "string",
1131
+ required: true,
1132
+ validate: value => {
1133
+ if (typeof value === "string" && value.length < 25)
1134
+ throw new Error("'accountConfigId' must be at least 25 characters");
1135
+ if (typeof value === "string" && value.length > 25)
1136
+ throw new Error("'accountConfigId' must be at most 25 characters");
1137
+ return true;
1138
+ }
1139
+ },
1140
+ name: {
1141
+ type: "string",
1142
+ required: true,
1143
+ validate: value => {
1144
+ if (typeof value === "string" && value.length > 140)
1145
+ throw new Error("'name' must be at most 140 characters");
1146
+ return true;
1147
+ }
1148
+ },
1149
+ normalizedName: {
1150
+ type: "string",
1151
+ required: true,
1152
+ validate: value => {
1153
+ if (typeof value === "string" && value.length > 140)
1154
+ throw new Error("'normalizedName' must be at most 140 characters");
1155
+ return true;
1156
+ }
1157
+ },
1158
+ color: {
1159
+ type: ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"],
1160
+ required: true,
1161
+ default: "Default"
1162
+ },
1163
+ createdAt: {
1164
+ type: "number",
1165
+ readOnly: true,
1166
+ required: true,
1167
+ default: () => Date.now(),
1168
+ set: () => Date.now()
1169
+ },
1170
+ updatedAt: {
1171
+ type: "number",
1172
+ watch: "*",
1173
+ required: true,
1174
+ default: () => Date.now(),
1175
+ set: () => Date.now()
1176
+ }
1177
+ },
1178
+ indexes: {
1179
+ byNormalizedName: {
1180
+ pk: {
1181
+ field: "gsi0pk",
1182
+ composite: ["accountConfigId"]
1183
+ },
1184
+ sk: {
1185
+ field: "gsi0sk",
1186
+ composite: ["normalizedName"]
1187
+ },
1188
+ index: "gsi0"
1189
+ },
1190
+ Label: {
1191
+ pk: {
1192
+ field: "pk",
1193
+ composite: ["accountConfigId"]
1194
+ },
1195
+ sk: {
1196
+ field: "sk",
1197
+ composite: ["labelId"]
1198
+ }
1199
+ }
1200
+ },
1201
+ model: {
1202
+ entity: "label",
1203
+ service: "remit",
1204
+ version: "1"
1205
+ }
1206
+ };
1116
1207
  export const OrganizeJobRequest = {
1117
1208
  attributes: {
1118
1209
  organizeJobId: {
@@ -1162,7 +1253,7 @@ export const OrganizeJobRequest = {
1162
1253
  type: "map",
1163
1254
  properties: {
1164
1255
  field: {
1165
- type: ["From", "Subject", "HasWords"],
1256
+ type: ["From", "Subject", "HasWords", "ListId", "FromDomain"],
1166
1257
  required: true
1167
1258
  },
1168
1259
  value: {
@@ -1380,6 +1471,15 @@ export const ThreadMessage = {
1380
1471
  type: "string",
1381
1472
  required: false
1382
1473
  },
1474
+ listId: {
1475
+ type: "string",
1476
+ required: false,
1477
+ validate: value => {
1478
+ if (typeof value === "string" && value.length > 256)
1479
+ throw new Error("'listId' must be at most 256 characters");
1480
+ return true;
1481
+ }
1482
+ },
1383
1483
  internalDate: {
1384
1484
  type: "number",
1385
1485
  required: true,
@@ -3967,97 +4067,6 @@ export const BodyPartContent = {
3967
4067
  version: "1"
3968
4068
  }
3969
4069
  };
3970
- export const Label = {
3971
- attributes: {
3972
- labelId: {
3973
- type: "string",
3974
- required: true,
3975
- validate: value => {
3976
- if (typeof value === "string" && value.length < 25)
3977
- throw new Error("'labelId' must be at least 25 characters");
3978
- if (typeof value === "string" && value.length > 25)
3979
- throw new Error("'labelId' must be at most 25 characters");
3980
- return true;
3981
- }
3982
- },
3983
- accountConfigId: {
3984
- type: "string",
3985
- required: true,
3986
- validate: value => {
3987
- if (typeof value === "string" && value.length < 25)
3988
- throw new Error("'accountConfigId' must be at least 25 characters");
3989
- if (typeof value === "string" && value.length > 25)
3990
- throw new Error("'accountConfigId' must be at most 25 characters");
3991
- return true;
3992
- }
3993
- },
3994
- name: {
3995
- type: "string",
3996
- required: true,
3997
- validate: value => {
3998
- if (typeof value === "string" && value.length > 140)
3999
- throw new Error("'name' must be at most 140 characters");
4000
- return true;
4001
- }
4002
- },
4003
- normalizedName: {
4004
- type: "string",
4005
- required: true,
4006
- validate: value => {
4007
- if (typeof value === "string" && value.length > 140)
4008
- throw new Error("'normalizedName' must be at most 140 characters");
4009
- return true;
4010
- }
4011
- },
4012
- color: {
4013
- type: ["Default", "Red", "Orange", "Yellow", "Green", "Teal", "Blue", "Purple", "Gray"],
4014
- required: true,
4015
- default: "Default"
4016
- },
4017
- createdAt: {
4018
- type: "number",
4019
- readOnly: true,
4020
- required: true,
4021
- default: () => Date.now(),
4022
- set: () => Date.now()
4023
- },
4024
- updatedAt: {
4025
- type: "number",
4026
- watch: "*",
4027
- required: true,
4028
- default: () => Date.now(),
4029
- set: () => Date.now()
4030
- }
4031
- },
4032
- indexes: {
4033
- byNormalizedName: {
4034
- pk: {
4035
- field: "gsi0pk",
4036
- composite: ["accountConfigId"]
4037
- },
4038
- sk: {
4039
- field: "gsi0sk",
4040
- composite: ["normalizedName"]
4041
- },
4042
- index: "gsi0"
4043
- },
4044
- Label: {
4045
- pk: {
4046
- field: "pk",
4047
- composite: ["accountConfigId"]
4048
- },
4049
- sk: {
4050
- field: "sk",
4051
- composite: ["labelId"]
4052
- }
4053
- }
4054
- },
4055
- model: {
4056
- entity: "label",
4057
- service: "remit",
4058
- version: "1"
4059
- }
4060
- };
4061
4070
  export const MessageLabel = {
4062
4071
  attributes: {
4063
4072
  messageLabelId: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remit/electrodb-entities",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "description": "ElectroDB entities",
5
5
  "type": "module",
6
6
  "main": "./index.cjs",