@cosmicdrift/kumiko-bundled-features 0.396.0 → 0.397.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.
Files changed (34) hide show
  1. package/dist/auth-mfa/schema/user-mfa.d.ts +4 -0
  2. package/dist/billing-foundation/entities.d.ts +2 -0
  3. package/dist/billing-foundation/projection.d.ts +2 -0
  4. package/dist/cap-counter/entity.d.ts +3 -0
  5. package/dist/cap-overview/handlers/caps-usage.query.js +3 -1
  6. package/dist/cap-overview/handlers/tenant-caps-list.query.js +3 -3
  7. package/dist/cap-overview/index.d.ts +1 -1
  8. package/dist/cap-overview/types.d.ts +5 -1
  9. package/dist/compliance-profiles/schema/profile-selection.d.ts +2 -0
  10. package/dist/custom-fields/entity.d.ts +1 -0
  11. package/dist/inbound-mail-foundation/entities.d.ts +6 -0
  12. package/dist/inbound-mail-foundation/ingest-failures.d.ts +3 -0
  13. package/dist/inbound-mail-foundation/projection.d.ts +4 -0
  14. package/dist/inbound-mail-foundation/quarantine-entities.d.ts +3 -0
  15. package/dist/jobs/job-run-table.d.ts +4 -0
  16. package/dist/ledger/entity.d.ts +7 -0
  17. package/dist/managed-pages/table.d.ts +2 -0
  18. package/dist/personal-access-tokens/schema/api-token.d.ts +3 -0
  19. package/dist/readiness/schema/probe-run.d.ts +16 -0
  20. package/dist/secrets/table.d.ts +1 -0
  21. package/dist/sessions/schema/user-session.d.ts +4 -0
  22. package/dist/template-resolver/table.d.ts +12 -0
  23. package/dist/template-resolver/user-content-table.d.ts +4 -0
  24. package/dist/tenant/invitation-table.d.ts +6 -0
  25. package/dist/tenant/schema/tenant.d.ts +10 -0
  26. package/dist/tier-engine/entity.d.ts +1 -0
  27. package/dist/tier-engine/tier-resolver.d.ts +1 -0
  28. package/dist/user/schema/user.d.ts +4 -0
  29. package/dist/user-data-rights/schema/download-attempt.d.ts +2 -0
  30. package/dist/user-data-rights/schema/download-token.d.ts +8 -0
  31. package/dist/user-data-rights/schema/export-job.d.ts +12 -0
  32. package/dist/waitlist/entity.d.ts +8 -0
  33. package/package.json +11 -11
  34. package/src/cap-overview/changes.json +6 -0
@@ -13,6 +13,7 @@ export declare const userMfaEntity: import("@cosmicdrift/kumiko-types/fields").E
13
13
  readonly description?: string;
14
14
  readonly required?: boolean;
15
15
  readonly sortable?: boolean;
16
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
16
17
  readonly filterable?: boolean;
17
18
  readonly sensitive?: boolean;
18
19
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -28,6 +29,7 @@ export declare const userMfaEntity: import("@cosmicdrift/kumiko-types/fields").E
28
29
  readonly description?: string;
29
30
  readonly required?: boolean;
30
31
  readonly sortable?: boolean;
32
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
31
33
  readonly filterable?: boolean;
32
34
  readonly sensitive?: boolean;
33
35
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -54,6 +56,7 @@ export declare const userMfaTable: import("@cosmicdrift/kumiko-framework/db").En
54
56
  readonly description?: string;
55
57
  readonly required?: boolean;
56
58
  readonly sortable?: boolean;
59
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
57
60
  readonly filterable?: boolean;
58
61
  readonly sensitive?: boolean;
59
62
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -69,6 +72,7 @@ export declare const userMfaTable: import("@cosmicdrift/kumiko-framework/db").En
69
72
  readonly description?: string;
70
73
  readonly required?: boolean;
71
74
  readonly sortable?: boolean;
75
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
72
76
  readonly filterable?: boolean;
73
77
  readonly sensitive?: boolean;
74
78
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -19,6 +19,7 @@ export declare const subscriptionEntity: import("@cosmicdrift/kumiko-types/field
19
19
  readonly description?: string;
20
20
  readonly required?: boolean;
21
21
  readonly sortable?: boolean;
22
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
22
23
  readonly filterable?: boolean;
23
24
  readonly sensitive?: boolean;
24
25
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -34,6 +35,7 @@ export declare const subscriptionEntity: import("@cosmicdrift/kumiko-types/field
34
35
  readonly description?: string;
35
36
  readonly required?: boolean;
36
37
  readonly sortable?: boolean;
38
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
37
39
  readonly filterable?: boolean;
38
40
  readonly sensitive?: boolean;
39
41
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -20,6 +20,7 @@ export declare const subscriptionsProjectionTable: import("@cosmicdrift/kumiko-f
20
20
  readonly description?: string;
21
21
  readonly required?: boolean;
22
22
  readonly sortable?: boolean;
23
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
23
24
  readonly filterable?: boolean;
24
25
  readonly sensitive?: boolean;
25
26
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -35,6 +36,7 @@ export declare const subscriptionsProjectionTable: import("@cosmicdrift/kumiko-f
35
36
  readonly description?: string;
36
37
  readonly required?: boolean;
37
38
  readonly sortable?: boolean;
39
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
38
40
  readonly filterable?: boolean;
39
41
  readonly sensitive?: boolean;
40
42
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -7,6 +7,7 @@ export declare const capCounterEntity: import("@cosmicdrift/kumiko-types/fields"
7
7
  readonly description?: string;
8
8
  readonly required?: boolean;
9
9
  readonly sortable?: boolean;
10
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
10
11
  readonly filterable?: boolean;
11
12
  readonly sensitive?: boolean;
12
13
  readonly default?: number;
@@ -19,6 +20,7 @@ export declare const capCounterEntity: import("@cosmicdrift/kumiko-types/fields"
19
20
  readonly description?: string;
20
21
  readonly required?: boolean;
21
22
  readonly sortable?: boolean;
23
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
22
24
  readonly filterable?: boolean;
23
25
  readonly sensitive?: boolean;
24
26
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -34,6 +36,7 @@ export declare const capCounterEntity: import("@cosmicdrift/kumiko-types/fields"
34
36
  readonly description?: string;
35
37
  readonly required?: boolean;
36
38
  readonly sortable?: boolean;
39
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
37
40
  readonly filterable?: boolean;
38
41
  readonly sensitive?: boolean;
39
42
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -54,7 +54,9 @@ export function createCapsUsageQuery(caps, usageRoles) {
54
54
  const config = override === undefined ? ctx.config : ctx.tenants.config?.(targetTenantId);
55
55
  const rows = await Promise.all(caps.map(async (cap) => {
56
56
  const used = await cap.usage(db, targetTenantId);
57
- const limit = cap.showLimit === false ? null : await cap.limit(tier, { config });
57
+ const limit = cap.showLimit === false
58
+ ? null
59
+ : await cap.limit(tier, { config, tenantId: targetTenantId, db });
58
60
  const base = {
59
61
  id: cap.id,
60
62
  label: cap.label,
@@ -31,9 +31,9 @@ function tenantCapKey(tenantId, capId) {
31
31
  }
32
32
  // One config accessor per tenant: limits may read tenant-scoped config keys, so
33
33
  // a limit shared across tenants of the same tier would show the wrong value.
34
- async function resolveLimitsByTenantAndCap(caps, tenants, configFor) {
34
+ async function resolveLimitsByTenantAndCap(caps, tenants, configFor, db) {
35
35
  const entries = await Promise.all(tenants.flatMap(({ tenantId, tier }) => {
36
- const context = { config: configFor?.(tenantId) };
36
+ const context = { config: configFor?.(tenantId), tenantId, db };
37
37
  return caps.map(async (cap) => [tenantCapKey(tenantId, cap.id), await cap.limit(tier, context)]);
38
38
  }));
39
39
  return new Map(entries);
@@ -163,7 +163,7 @@ export function createTenantCapsListQuery(caps, listCaps) {
163
163
  const perTenantEntries = await Promise.all(pageTenantIds.map(async (tenantId) => [tenantId, await cap.usage(db, tenantId)]));
164
164
  usageByCap.set(cap.id, new Map(perTenantEntries));
165
165
  }));
166
- const limitByTenantAndCap = await resolveLimitsByTenantAndCap(listedCaps, page, ctx.tenants.config);
166
+ const limitByTenantAndCap = await resolveLimitsByTenantAndCap(listedCaps, page, ctx.tenants.config, db);
167
167
  const rows = page.map((row) => {
168
168
  const capFields = {};
169
169
  for (const cap of listedCaps) {
@@ -1,6 +1,6 @@
1
1
  export { DEFAULT_CAP_USAGE_ROLES } from "./access.ts";
2
2
  export { type CreateCapOverviewOptions, createCapOverviewFeature } from "./feature.ts";
3
3
  export { createMyCapsScreen, createTenantCapListScreen, platformTenantCapsScreen, } from "./screens.ts";
4
- export type { CapSpec, CapUsage, CapUsageTone, CapUsageWithMeta } from "./types.ts";
4
+ export type { CapSpec, CapSpecLimitContext, CapUsage, CapUsageTone, CapUsageWithMeta, } from "./types.ts";
5
5
  export { CAP_CARDS_PANEL_COMPONENT, CAP_OVERVIEW_FEATURE, CAP_USAGE_CELL_COMPONENT, CapOverviewQueries, capFieldName, MY_CAPS_SCREEN_ID, PLATFORM_TENANT_CAPS_SCREEN_ID, TENANT_CAP_LIST_SCREEN_ID, } from "./web/constants.ts";
6
6
  export { computeFraction, computeTone } from "./web/usage-math.ts";
@@ -3,10 +3,14 @@ import type { TenantId } from "@cosmicdrift/kumiko-framework/engine";
3
3
  import type { CapLimitContext } from "../cap-counter/index.ts";
4
4
  export type CapUnit = "count" | "mb" | "tokens";
5
5
  export type CapIconKey = "file" | "hash" | "database" | "users" | "mail" | "gauge";
6
+ export type CapSpecLimitContext = CapLimitContext & {
7
+ readonly tenantId: TenantId;
8
+ readonly db: TenantDb;
9
+ };
6
10
  export type CapSpec = {
7
11
  readonly id: string;
8
12
  readonly label: string;
9
- readonly limit: (tier: string, context: CapLimitContext) => number | null | Promise<number | null>;
13
+ readonly limit: (tier: string, context: CapSpecLimitContext) => number | null | Promise<number | null>;
10
14
  readonly usage: (db: TenantDb, tenantId: TenantId) => Promise<number | null>;
11
15
  readonly usageBatch?: (db: TenantDb, tenantIds: readonly TenantId[]) => Promise<Map<TenantId, number | null>>;
12
16
  readonly unit?: CapUnit;
@@ -5,6 +5,7 @@ export declare const tenantComplianceProfileEntity: import("@cosmicdrift/kumiko-
5
5
  readonly options: readonly ["eu-dsgvo", "swiss-dsg", "de-hr-dsgvo-hgb", "minimal-no-region"];
6
6
  readonly required?: boolean;
7
7
  readonly sortable?: boolean;
8
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
8
9
  readonly filterable?: boolean;
9
10
  readonly sensitive?: boolean;
10
11
  readonly default?: "de-hr-dsgvo-hgb" | "eu-dsgvo" | "minimal-no-region" | "swiss-dsg" | undefined;
@@ -34,6 +35,7 @@ export declare const tenantComplianceProfileTable: import("@cosmicdrift/kumiko-f
34
35
  readonly options: readonly ["eu-dsgvo", "swiss-dsg", "de-hr-dsgvo-hgb", "minimal-no-region"];
35
36
  readonly required?: boolean;
36
37
  readonly sortable?: boolean;
38
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
37
39
  readonly filterable?: boolean;
38
40
  readonly sensitive?: boolean;
39
41
  readonly default?: "de-hr-dsgvo-hgb" | "eu-dsgvo" | "minimal-no-region" | "swiss-dsg" | undefined;
@@ -21,6 +21,7 @@ export declare const fieldDefinitionEntity: import("@cosmicdrift/kumiko-types/fi
21
21
  readonly description?: string;
22
22
  readonly required?: boolean;
23
23
  readonly sortable?: boolean;
24
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
24
25
  readonly filterable?: boolean;
25
26
  readonly sensitive?: boolean;
26
27
  readonly default?: number;
@@ -33,6 +33,7 @@ export declare const mailAccountEntity: import("@cosmicdrift/kumiko-types/fields
33
33
  readonly description?: string;
34
34
  readonly required?: boolean;
35
35
  readonly sortable?: boolean;
36
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
36
37
  readonly filterable?: boolean;
37
38
  readonly sensitive?: boolean;
38
39
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -80,6 +81,7 @@ export declare const inboundMessageEntity: import("@cosmicdrift/kumiko-types/fie
80
81
  readonly description?: string;
81
82
  readonly required?: boolean;
82
83
  readonly sortable?: boolean;
84
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
83
85
  readonly filterable?: boolean;
84
86
  readonly sensitive?: boolean;
85
87
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -131,6 +133,7 @@ export declare const mailThreadEntity: import("@cosmicdrift/kumiko-types/fields"
131
133
  readonly description?: string;
132
134
  readonly required?: boolean;
133
135
  readonly sortable?: boolean;
136
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
134
137
  readonly filterable?: boolean;
135
138
  readonly sensitive?: boolean;
136
139
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -146,6 +149,7 @@ export declare const mailThreadEntity: import("@cosmicdrift/kumiko-types/fields"
146
149
  readonly description?: string;
147
150
  readonly required?: boolean;
148
151
  readonly sortable?: boolean;
152
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
149
153
  readonly filterable?: boolean;
150
154
  readonly sensitive?: boolean;
151
155
  readonly default?: number;
@@ -183,6 +187,7 @@ export declare const syncCursorEntity: import("@cosmicdrift/kumiko-types/fields"
183
187
  readonly description?: string;
184
188
  readonly required?: boolean;
185
189
  readonly sortable?: boolean;
190
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
186
191
  readonly filterable?: boolean;
187
192
  readonly sensitive?: boolean;
188
193
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -210,6 +215,7 @@ export declare const seenMessageEntity: import("@cosmicdrift/kumiko-types/fields
210
215
  readonly description?: string;
211
216
  readonly required?: boolean;
212
217
  readonly sortable?: boolean;
218
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
213
219
  readonly filterable?: boolean;
214
220
  readonly sensitive?: boolean;
215
221
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -13,6 +13,7 @@ export declare const ingestFailureEntity: import("@cosmicdrift/kumiko-types/fiel
13
13
  readonly description?: string;
14
14
  readonly required?: boolean;
15
15
  readonly sortable?: boolean;
16
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
16
17
  readonly filterable?: boolean;
17
18
  readonly sensitive?: boolean;
18
19
  readonly default?: number;
@@ -32,6 +33,7 @@ export declare const ingestFailureEntity: import("@cosmicdrift/kumiko-types/fiel
32
33
  readonly description?: string;
33
34
  readonly required?: boolean;
34
35
  readonly sortable?: boolean;
36
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
35
37
  readonly filterable?: boolean;
36
38
  readonly sensitive?: boolean;
37
39
  readonly default?: number;
@@ -51,6 +53,7 @@ export declare const ingestFailureEntity: import("@cosmicdrift/kumiko-types/fiel
51
53
  readonly description?: string;
52
54
  readonly required?: boolean;
53
55
  readonly sortable?: boolean;
56
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
54
57
  readonly filterable?: boolean;
55
58
  readonly sensitive?: boolean;
56
59
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -31,6 +31,7 @@ export declare const mailAccountsProjectionTable: import("@cosmicdrift/kumiko-fr
31
31
  readonly description?: string;
32
32
  readonly required?: boolean;
33
33
  readonly sortable?: boolean;
34
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
34
35
  readonly filterable?: boolean;
35
36
  readonly sensitive?: boolean;
36
37
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -75,6 +76,7 @@ export declare const inboundMessagesProjectionTable: import("@cosmicdrift/kumiko
75
76
  readonly description?: string;
76
77
  readonly required?: boolean;
77
78
  readonly sortable?: boolean;
79
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
78
80
  readonly filterable?: boolean;
79
81
  readonly sensitive?: boolean;
80
82
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -124,6 +126,7 @@ export declare const mailThreadsProjectionTable: import("@cosmicdrift/kumiko-fra
124
126
  readonly description?: string;
125
127
  readonly required?: boolean;
126
128
  readonly sortable?: boolean;
129
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
127
130
  readonly filterable?: boolean;
128
131
  readonly sensitive?: boolean;
129
132
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -139,6 +142,7 @@ export declare const mailThreadsProjectionTable: import("@cosmicdrift/kumiko-fra
139
142
  readonly description?: string;
140
143
  readonly required?: boolean;
141
144
  readonly sortable?: boolean;
145
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
142
146
  readonly filterable?: boolean;
143
147
  readonly sensitive?: boolean;
144
148
  readonly default?: number;
@@ -17,6 +17,7 @@ export declare const quarantineEntity: import("@cosmicdrift/kumiko-types/fields"
17
17
  readonly description?: string;
18
18
  readonly required?: boolean;
19
19
  readonly sortable?: boolean;
20
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
20
21
  readonly filterable?: boolean;
21
22
  readonly sensitive?: boolean;
22
23
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -32,6 +33,7 @@ export declare const quarantineEntity: import("@cosmicdrift/kumiko-types/fields"
32
33
  readonly description?: string;
33
34
  readonly required?: boolean;
34
35
  readonly sortable?: boolean;
36
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
35
37
  readonly filterable?: boolean;
36
38
  readonly sensitive?: boolean;
37
39
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -47,6 +49,7 @@ export declare const quarantineEntity: import("@cosmicdrift/kumiko-types/fields"
47
49
  readonly description?: string;
48
50
  readonly required?: boolean;
49
51
  readonly sortable?: boolean;
52
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
50
53
  readonly filterable?: boolean;
51
54
  readonly sensitive?: boolean;
52
55
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -22,6 +22,7 @@ export declare const jobRunEntity: import("@cosmicdrift/kumiko-types/fields").En
22
22
  readonly description?: string;
23
23
  readonly required?: boolean;
24
24
  readonly sortable?: boolean;
25
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
25
26
  readonly filterable?: boolean;
26
27
  readonly sensitive?: boolean;
27
28
  readonly default?: number;
@@ -41,6 +42,7 @@ export declare const jobRunEntity: import("@cosmicdrift/kumiko-types/fields").En
41
42
  readonly description?: string;
42
43
  readonly required?: boolean;
43
44
  readonly sortable?: boolean;
45
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
44
46
  readonly filterable?: boolean;
45
47
  readonly sensitive?: boolean;
46
48
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -56,6 +58,7 @@ export declare const jobRunEntity: import("@cosmicdrift/kumiko-types/fields").En
56
58
  readonly description?: string;
57
59
  readonly required?: boolean;
58
60
  readonly sortable?: boolean;
61
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
59
62
  readonly filterable?: boolean;
60
63
  readonly sensitive?: boolean;
61
64
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -71,6 +74,7 @@ export declare const jobRunEntity: import("@cosmicdrift/kumiko-types/fields").En
71
74
  readonly description?: string;
72
75
  readonly required?: boolean;
73
76
  readonly sortable?: boolean;
77
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
74
78
  readonly filterable?: boolean;
75
79
  readonly sensitive?: boolean;
76
80
  readonly default?: number;
@@ -8,6 +8,7 @@ export declare const accountEntity: import("@cosmicdrift/kumiko-types/fields").E
8
8
  readonly options: readonly ["asset", "liability", "equity", "income", "expense"];
9
9
  readonly required?: boolean;
10
10
  readonly sortable?: boolean;
11
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
11
12
  readonly filterable?: boolean;
12
13
  readonly sensitive?: boolean;
13
14
  readonly default?: "asset" | "equity" | "expense" | "income" | "liability" | undefined;
@@ -40,6 +41,7 @@ export declare const transactionEntity: import("@cosmicdrift/kumiko-types/fields
40
41
  readonly description?: string;
41
42
  readonly required?: boolean;
42
43
  readonly sortable?: boolean;
44
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
43
45
  readonly filterable?: boolean;
44
46
  readonly sensitive?: boolean;
45
47
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -61,6 +63,7 @@ export declare const transactionEntity: import("@cosmicdrift/kumiko-types/fields
61
63
  readonly options: readonly ["draft", "posted"];
62
64
  readonly required?: boolean;
63
65
  readonly sortable?: boolean;
66
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
64
67
  readonly filterable?: boolean;
65
68
  readonly sensitive?: boolean;
66
69
  readonly default?: "draft" | "posted" | undefined;
@@ -109,6 +112,7 @@ export declare const scheduleEntity: import("@cosmicdrift/kumiko-types/fields").
109
112
  readonly description?: string;
110
113
  readonly required?: boolean;
111
114
  readonly sortable?: boolean;
115
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
112
116
  readonly filterable?: boolean;
113
117
  readonly sensitive?: boolean;
114
118
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -123,6 +127,7 @@ export declare const scheduleEntity: import("@cosmicdrift/kumiko-types/fields").
123
127
  readonly description?: string;
124
128
  readonly required?: boolean;
125
129
  readonly sortable?: boolean;
130
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
126
131
  readonly filterable?: boolean;
127
132
  readonly sensitive?: boolean;
128
133
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -138,6 +143,7 @@ export declare const scheduleEntity: import("@cosmicdrift/kumiko-types/fields").
138
143
  readonly options: readonly ["monthly"];
139
144
  readonly required?: boolean;
140
145
  readonly sortable?: boolean;
146
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
141
147
  readonly filterable?: boolean;
142
148
  readonly sensitive?: boolean;
143
149
  readonly default?: "monthly" | undefined;
@@ -158,6 +164,7 @@ export declare const scheduleEntity: import("@cosmicdrift/kumiko-types/fields").
158
164
  readonly description?: string;
159
165
  readonly required?: boolean;
160
166
  readonly sortable?: boolean;
167
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
161
168
  readonly filterable?: boolean;
162
169
  readonly sensitive?: boolean;
163
170
  readonly default?: number;
@@ -18,6 +18,7 @@ export declare const pageEntity: import("@cosmicdrift/kumiko-types/fields").Enti
18
18
  readonly options: readonly ["markdown", "document"];
19
19
  readonly required?: boolean;
20
20
  readonly sortable?: boolean;
21
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
21
22
  readonly filterable?: boolean;
22
23
  readonly sensitive?: boolean;
23
24
  readonly default?: "document" | "markdown" | undefined;
@@ -64,6 +65,7 @@ export declare const pagesTable: import("@cosmicdrift/kumiko-framework/db").Enti
64
65
  readonly options: readonly ["markdown", "document"];
65
66
  readonly required?: boolean;
66
67
  readonly sortable?: boolean;
68
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
67
69
  readonly filterable?: boolean;
68
70
  readonly sensitive?: boolean;
69
71
  readonly default?: "document" | "markdown" | undefined;
@@ -22,6 +22,7 @@ export declare const apiTokenEntity: import("@cosmicdrift/kumiko-types/fields").
22
22
  readonly description?: string;
23
23
  readonly required?: boolean;
24
24
  readonly sortable?: boolean;
25
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
25
26
  readonly filterable?: boolean;
26
27
  readonly sensitive?: boolean;
27
28
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -37,6 +38,7 @@ export declare const apiTokenEntity: import("@cosmicdrift/kumiko-types/fields").
37
38
  readonly description?: string;
38
39
  readonly required?: boolean;
39
40
  readonly sortable?: boolean;
41
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
40
42
  readonly filterable?: boolean;
41
43
  readonly sensitive?: boolean;
42
44
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -52,6 +54,7 @@ export declare const apiTokenEntity: import("@cosmicdrift/kumiko-types/fields").
52
54
  readonly description?: string;
53
55
  readonly required?: boolean;
54
56
  readonly sortable?: boolean;
57
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
55
58
  readonly filterable?: boolean;
56
59
  readonly sensitive?: boolean;
57
60
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -30,6 +30,7 @@ export declare const probeRunEntity: import("@cosmicdrift/kumiko-types/fields").
30
30
  readonly options: readonly ["pending", "running", "done", "abandoned"];
31
31
  readonly required?: boolean;
32
32
  readonly sortable?: boolean;
33
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
33
34
  readonly filterable?: boolean;
34
35
  readonly sensitive?: boolean;
35
36
  readonly default?: "abandoned" | "done" | "pending" | "running" | undefined;
@@ -64,6 +65,7 @@ export declare const probeRunEntity: import("@cosmicdrift/kumiko-types/fields").
64
65
  readonly description?: string;
65
66
  readonly required?: boolean;
66
67
  readonly sortable?: boolean;
68
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
67
69
  readonly filterable?: boolean;
68
70
  readonly sensitive?: boolean;
69
71
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -79,6 +81,7 @@ export declare const probeRunEntity: import("@cosmicdrift/kumiko-types/fields").
79
81
  readonly description?: string;
80
82
  readonly required?: boolean;
81
83
  readonly sortable?: boolean;
84
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
82
85
  readonly filterable?: boolean;
83
86
  readonly sensitive?: boolean;
84
87
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -94,6 +97,7 @@ export declare const probeRunEntity: import("@cosmicdrift/kumiko-types/fields").
94
97
  readonly description?: string;
95
98
  readonly required?: boolean;
96
99
  readonly sortable?: boolean;
100
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
97
101
  readonly filterable?: boolean;
98
102
  readonly sensitive?: boolean;
99
103
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -109,6 +113,7 @@ export declare const probeRunEntity: import("@cosmicdrift/kumiko-types/fields").
109
113
  readonly description?: string;
110
114
  readonly required?: boolean;
111
115
  readonly sortable?: boolean;
116
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
112
117
  readonly filterable?: boolean;
113
118
  readonly sensitive?: boolean;
114
119
  readonly default?: number;
@@ -128,6 +133,7 @@ export declare const probeRunEntity: import("@cosmicdrift/kumiko-types/fields").
128
133
  readonly description?: string;
129
134
  readonly required?: boolean;
130
135
  readonly sortable?: boolean;
136
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
131
137
  readonly filterable?: boolean;
132
138
  readonly sensitive?: boolean;
133
139
  readonly default?: number;
@@ -147,6 +153,7 @@ export declare const probeRunEntity: import("@cosmicdrift/kumiko-types/fields").
147
153
  readonly description?: string;
148
154
  readonly required?: boolean;
149
155
  readonly sortable?: boolean;
156
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
150
157
  readonly filterable?: boolean;
151
158
  readonly sensitive?: boolean;
152
159
  readonly default?: number;
@@ -166,6 +173,7 @@ export declare const probeRunEntity: import("@cosmicdrift/kumiko-types/fields").
166
173
  readonly description?: string;
167
174
  readonly required?: boolean;
168
175
  readonly sortable?: boolean;
176
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
169
177
  readonly filterable?: boolean;
170
178
  readonly sensitive?: boolean;
171
179
  readonly default?: number;
@@ -189,6 +197,7 @@ export declare const probeRunsTable: import("@cosmicdrift/kumiko-framework/db").
189
197
  readonly options: readonly ["pending", "running", "done", "abandoned"];
190
198
  readonly required?: boolean;
191
199
  readonly sortable?: boolean;
200
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
192
201
  readonly filterable?: boolean;
193
202
  readonly sensitive?: boolean;
194
203
  readonly default?: "abandoned" | "done" | "pending" | "running" | undefined;
@@ -223,6 +232,7 @@ export declare const probeRunsTable: import("@cosmicdrift/kumiko-framework/db").
223
232
  readonly description?: string;
224
233
  readonly required?: boolean;
225
234
  readonly sortable?: boolean;
235
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
226
236
  readonly filterable?: boolean;
227
237
  readonly sensitive?: boolean;
228
238
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -238,6 +248,7 @@ export declare const probeRunsTable: import("@cosmicdrift/kumiko-framework/db").
238
248
  readonly description?: string;
239
249
  readonly required?: boolean;
240
250
  readonly sortable?: boolean;
251
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
241
252
  readonly filterable?: boolean;
242
253
  readonly sensitive?: boolean;
243
254
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -253,6 +264,7 @@ export declare const probeRunsTable: import("@cosmicdrift/kumiko-framework/db").
253
264
  readonly description?: string;
254
265
  readonly required?: boolean;
255
266
  readonly sortable?: boolean;
267
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
256
268
  readonly filterable?: boolean;
257
269
  readonly sensitive?: boolean;
258
270
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -268,6 +280,7 @@ export declare const probeRunsTable: import("@cosmicdrift/kumiko-framework/db").
268
280
  readonly description?: string;
269
281
  readonly required?: boolean;
270
282
  readonly sortable?: boolean;
283
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
271
284
  readonly filterable?: boolean;
272
285
  readonly sensitive?: boolean;
273
286
  readonly default?: number;
@@ -287,6 +300,7 @@ export declare const probeRunsTable: import("@cosmicdrift/kumiko-framework/db").
287
300
  readonly description?: string;
288
301
  readonly required?: boolean;
289
302
  readonly sortable?: boolean;
303
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
290
304
  readonly filterable?: boolean;
291
305
  readonly sensitive?: boolean;
292
306
  readonly default?: number;
@@ -306,6 +320,7 @@ export declare const probeRunsTable: import("@cosmicdrift/kumiko-framework/db").
306
320
  readonly description?: string;
307
321
  readonly required?: boolean;
308
322
  readonly sortable?: boolean;
323
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
309
324
  readonly filterable?: boolean;
310
325
  readonly sensitive?: boolean;
311
326
  readonly default?: number;
@@ -325,6 +340,7 @@ export declare const probeRunsTable: import("@cosmicdrift/kumiko-framework/db").
325
340
  readonly description?: string;
326
341
  readonly required?: boolean;
327
342
  readonly sortable?: boolean;
343
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
328
344
  readonly filterable?: boolean;
329
345
  readonly sensitive?: boolean;
330
346
  readonly default?: number;
@@ -12,6 +12,7 @@ export declare const tenantSecretEntity: import("@cosmicdrift/kumiko-types/field
12
12
  readonly description?: string;
13
13
  readonly required?: boolean;
14
14
  readonly sortable?: boolean;
15
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
15
16
  readonly filterable?: boolean;
16
17
  readonly sensitive?: boolean;
17
18
  readonly default?: number;
@@ -10,6 +10,7 @@ export declare const userSessionEntity: import("@cosmicdrift/kumiko-types/fields
10
10
  readonly description?: string;
11
11
  readonly required?: boolean;
12
12
  readonly sortable?: boolean;
13
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
13
14
  readonly filterable?: boolean;
14
15
  readonly sensitive?: boolean;
15
16
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -25,6 +26,7 @@ export declare const userSessionEntity: import("@cosmicdrift/kumiko-types/fields
25
26
  readonly description?: string;
26
27
  readonly required?: boolean;
27
28
  readonly sortable?: boolean;
29
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
28
30
  readonly filterable?: boolean;
29
31
  readonly sensitive?: boolean;
30
32
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -40,6 +42,7 @@ export declare const userSessionEntity: import("@cosmicdrift/kumiko-types/fields
40
42
  readonly description?: string;
41
43
  readonly required?: boolean;
42
44
  readonly sortable?: boolean;
45
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
43
46
  readonly filterable?: boolean;
44
47
  readonly sensitive?: boolean;
45
48
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -55,6 +58,7 @@ export declare const userSessionEntity: import("@cosmicdrift/kumiko-types/fields
55
58
  readonly description?: string;
56
59
  readonly required?: boolean;
57
60
  readonly sortable?: boolean;
61
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
58
62
  readonly filterable?: boolean;
59
63
  readonly sensitive?: boolean;
60
64
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -9,6 +9,7 @@ export declare const templateResourceEntity: import("@cosmicdrift/kumiko-types/f
9
9
  readonly options: readonly ["mail", "document-pdf", "image-snapshot", "notification", "text-block", "snippet", "ai-prompt", "mail-layout", "pdf-layout"];
10
10
  readonly required?: boolean;
11
11
  readonly sortable?: boolean;
12
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
12
13
  readonly filterable?: boolean;
13
14
  readonly sensitive?: boolean;
14
15
  readonly default?: "ai-prompt" | "document-pdf" | "image-snapshot" | "mail" | "mail-layout" | "notification" | "pdf-layout" | "snippet" | "text-block" | undefined;
@@ -50,6 +51,7 @@ export declare const templateResourceEntity: import("@cosmicdrift/kumiko-types/f
50
51
  readonly options: readonly ["markdown", "mjml", "html", "plain"];
51
52
  readonly required?: boolean;
52
53
  readonly sortable?: boolean;
54
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
53
55
  readonly filterable?: boolean;
54
56
  readonly sensitive?: boolean;
55
57
  readonly default?: "html" | "markdown" | "mjml" | "plain" | undefined;
@@ -83,6 +85,7 @@ export declare const templateResourceEntity: import("@cosmicdrift/kumiko-types/f
83
85
  readonly options: readonly ["system", "tenant"];
84
86
  readonly required?: boolean;
85
87
  readonly sortable?: boolean;
88
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
86
89
  readonly filterable?: boolean;
87
90
  readonly sensitive?: boolean;
88
91
  readonly default?: "system" | "tenant" | undefined;
@@ -108,6 +111,7 @@ export declare const templateResourceEntity: import("@cosmicdrift/kumiko-types/f
108
111
  readonly options: readonly ["draft", "active", "archived"];
109
112
  readonly required?: boolean;
110
113
  readonly sortable?: boolean;
114
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
111
115
  readonly filterable?: boolean;
112
116
  readonly sensitive?: boolean;
113
117
  readonly default?: "active" | "archived" | "draft" | undefined;
@@ -133,6 +137,7 @@ export declare const templateResourceEntity: import("@cosmicdrift/kumiko-types/f
133
137
  readonly description?: string;
134
138
  readonly required?: boolean;
135
139
  readonly sortable?: boolean;
140
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
136
141
  readonly filterable?: boolean;
137
142
  readonly sensitive?: boolean;
138
143
  readonly default?: number;
@@ -152,6 +157,7 @@ export declare const templateResourceEntity: import("@cosmicdrift/kumiko-types/f
152
157
  readonly description?: string;
153
158
  readonly required?: boolean;
154
159
  readonly sortable?: boolean;
160
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
155
161
  readonly filterable?: boolean;
156
162
  readonly sensitive?: boolean;
157
163
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -173,6 +179,7 @@ export declare const templateResourcesTable: import("@cosmicdrift/kumiko-framewo
173
179
  readonly options: readonly ["mail", "document-pdf", "image-snapshot", "notification", "text-block", "snippet", "ai-prompt", "mail-layout", "pdf-layout"];
174
180
  readonly required?: boolean;
175
181
  readonly sortable?: boolean;
182
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
176
183
  readonly filterable?: boolean;
177
184
  readonly sensitive?: boolean;
178
185
  readonly default?: "ai-prompt" | "document-pdf" | "image-snapshot" | "mail" | "mail-layout" | "notification" | "pdf-layout" | "snippet" | "text-block" | undefined;
@@ -214,6 +221,7 @@ export declare const templateResourcesTable: import("@cosmicdrift/kumiko-framewo
214
221
  readonly options: readonly ["markdown", "mjml", "html", "plain"];
215
222
  readonly required?: boolean;
216
223
  readonly sortable?: boolean;
224
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
217
225
  readonly filterable?: boolean;
218
226
  readonly sensitive?: boolean;
219
227
  readonly default?: "html" | "markdown" | "mjml" | "plain" | undefined;
@@ -247,6 +255,7 @@ export declare const templateResourcesTable: import("@cosmicdrift/kumiko-framewo
247
255
  readonly options: readonly ["system", "tenant"];
248
256
  readonly required?: boolean;
249
257
  readonly sortable?: boolean;
258
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
250
259
  readonly filterable?: boolean;
251
260
  readonly sensitive?: boolean;
252
261
  readonly default?: "system" | "tenant" | undefined;
@@ -272,6 +281,7 @@ export declare const templateResourcesTable: import("@cosmicdrift/kumiko-framewo
272
281
  readonly options: readonly ["draft", "active", "archived"];
273
282
  readonly required?: boolean;
274
283
  readonly sortable?: boolean;
284
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
275
285
  readonly filterable?: boolean;
276
286
  readonly sensitive?: boolean;
277
287
  readonly default?: "active" | "archived" | "draft" | undefined;
@@ -297,6 +307,7 @@ export declare const templateResourcesTable: import("@cosmicdrift/kumiko-framewo
297
307
  readonly description?: string;
298
308
  readonly required?: boolean;
299
309
  readonly sortable?: boolean;
310
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
300
311
  readonly filterable?: boolean;
301
312
  readonly sensitive?: boolean;
302
313
  readonly default?: number;
@@ -316,6 +327,7 @@ export declare const templateResourcesTable: import("@cosmicdrift/kumiko-framewo
316
327
  readonly description?: string;
317
328
  readonly required?: boolean;
318
329
  readonly sortable?: boolean;
330
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
319
331
  readonly filterable?: boolean;
320
332
  readonly sensitive?: boolean;
321
333
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -12,6 +12,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
12
12
  readonly options: readonly ["mail", "document-pdf", "image-snapshot", "notification", "text-block", "snippet", "ai-prompt", "mail-layout", "pdf-layout"];
13
13
  readonly required?: boolean;
14
14
  readonly sortable?: boolean;
15
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
15
16
  readonly filterable?: boolean;
16
17
  readonly sensitive?: boolean;
17
18
  readonly default?: "ai-prompt" | "document-pdf" | "image-snapshot" | "mail" | "mail-layout" | "notification" | "pdf-layout" | "snippet" | "text-block" | undefined;
@@ -53,6 +54,7 @@ export declare const userContentEntryEntity: import("@cosmicdrift/kumiko-types/f
53
54
  readonly options: readonly ["markdown", "mjml", "html", "plain"];
54
55
  readonly required?: boolean;
55
56
  readonly sortable?: boolean;
57
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
56
58
  readonly filterable?: boolean;
57
59
  readonly sensitive?: boolean;
58
60
  readonly default?: "html" | "markdown" | "mjml" | "plain" | undefined;
@@ -85,6 +87,7 @@ export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framew
85
87
  readonly options: readonly ["mail", "document-pdf", "image-snapshot", "notification", "text-block", "snippet", "ai-prompt", "mail-layout", "pdf-layout"];
86
88
  readonly required?: boolean;
87
89
  readonly sortable?: boolean;
90
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
88
91
  readonly filterable?: boolean;
89
92
  readonly sensitive?: boolean;
90
93
  readonly default?: "ai-prompt" | "document-pdf" | "image-snapshot" | "mail" | "mail-layout" | "notification" | "pdf-layout" | "snippet" | "text-block" | undefined;
@@ -126,6 +129,7 @@ export declare const userContentEntriesTable: import("@cosmicdrift/kumiko-framew
126
129
  readonly options: readonly ["markdown", "mjml", "html", "plain"];
127
130
  readonly required?: boolean;
128
131
  readonly sortable?: boolean;
132
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
129
133
  readonly filterable?: boolean;
130
134
  readonly sensitive?: boolean;
131
135
  readonly default?: "html" | "markdown" | "mjml" | "plain" | undefined;
@@ -20,6 +20,7 @@ export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/f
20
20
  readonly options: readonly ["pending", "accepted", "cancelled", "expired"];
21
21
  readonly required?: boolean;
22
22
  readonly sortable?: boolean;
23
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
23
24
  readonly filterable?: boolean;
24
25
  readonly sensitive?: boolean;
25
26
  readonly default?: "accepted" | "cancelled" | "expired" | "pending" | undefined;
@@ -46,6 +47,7 @@ export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/f
46
47
  readonly description?: string;
47
48
  readonly required?: boolean;
48
49
  readonly sortable?: boolean;
50
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
49
51
  readonly filterable?: boolean;
50
52
  readonly sensitive?: boolean;
51
53
  readonly default?: number;
@@ -65,6 +67,7 @@ export declare const tenantInvitationEntity: import("@cosmicdrift/kumiko-types/f
65
67
  readonly description?: string;
66
68
  readonly required?: boolean;
67
69
  readonly sortable?: boolean;
70
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
68
71
  readonly filterable?: boolean;
69
72
  readonly sensitive?: boolean;
70
73
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -90,6 +93,7 @@ export declare const tenantInvitationsTable: import("@cosmicdrift/kumiko-framewo
90
93
  readonly options: readonly ["pending", "accepted", "cancelled", "expired"];
91
94
  readonly required?: boolean;
92
95
  readonly sortable?: boolean;
96
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
93
97
  readonly filterable?: boolean;
94
98
  readonly sensitive?: boolean;
95
99
  readonly default?: "accepted" | "cancelled" | "expired" | "pending" | undefined;
@@ -116,6 +120,7 @@ export declare const tenantInvitationsTable: import("@cosmicdrift/kumiko-framewo
116
120
  readonly description?: string;
117
121
  readonly required?: boolean;
118
122
  readonly sortable?: boolean;
123
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
119
124
  readonly filterable?: boolean;
120
125
  readonly sensitive?: boolean;
121
126
  readonly default?: number;
@@ -135,6 +140,7 @@ export declare const tenantInvitationsTable: import("@cosmicdrift/kumiko-framewo
135
140
  readonly description?: string;
136
141
  readonly required?: boolean;
137
142
  readonly sortable?: boolean;
143
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
138
144
  readonly filterable?: boolean;
139
145
  readonly sensitive?: boolean;
140
146
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -17,6 +17,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
17
17
  readonly options: readonly ["active", "destroyRequested", "destroying", "destroyFailed", "destroyed"];
18
18
  readonly required?: boolean;
19
19
  readonly sortable?: boolean;
20
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
20
21
  readonly filterable?: boolean;
21
22
  readonly sensitive?: boolean;
22
23
  readonly default?: "active" | "destroyFailed" | "destroyRequested" | "destroyed" | "destroying" | undefined;
@@ -41,6 +42,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
41
42
  readonly description?: string;
42
43
  readonly required?: boolean;
43
44
  readonly sortable?: boolean;
45
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
44
46
  readonly filterable?: boolean;
45
47
  readonly sensitive?: boolean;
46
48
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -59,6 +61,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
59
61
  readonly description?: string;
60
62
  readonly required?: boolean;
61
63
  readonly sortable?: boolean;
64
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
62
65
  readonly filterable?: boolean;
63
66
  readonly sensitive?: boolean;
64
67
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -74,6 +77,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
74
77
  readonly description?: string;
75
78
  readonly required?: boolean;
76
79
  readonly sortable?: boolean;
80
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
77
81
  readonly filterable?: boolean;
78
82
  readonly sensitive?: boolean;
79
83
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -89,6 +93,7 @@ export declare const tenantEntity: import("@cosmicdrift/kumiko-types/fields").En
89
93
  readonly description?: string;
90
94
  readonly required?: boolean;
91
95
  readonly sortable?: boolean;
96
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
92
97
  readonly filterable?: boolean;
93
98
  readonly sensitive?: boolean;
94
99
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -117,6 +122,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
117
122
  readonly options: readonly ["active", "destroyRequested", "destroying", "destroyFailed", "destroyed"];
118
123
  readonly required?: boolean;
119
124
  readonly sortable?: boolean;
125
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
120
126
  readonly filterable?: boolean;
121
127
  readonly sensitive?: boolean;
122
128
  readonly default?: "active" | "destroyFailed" | "destroyRequested" | "destroyed" | "destroying" | undefined;
@@ -141,6 +147,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
141
147
  readonly description?: string;
142
148
  readonly required?: boolean;
143
149
  readonly sortable?: boolean;
150
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
144
151
  readonly filterable?: boolean;
145
152
  readonly sensitive?: boolean;
146
153
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -159,6 +166,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
159
166
  readonly description?: string;
160
167
  readonly required?: boolean;
161
168
  readonly sortable?: boolean;
169
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
162
170
  readonly filterable?: boolean;
163
171
  readonly sensitive?: boolean;
164
172
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -174,6 +182,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
174
182
  readonly description?: string;
175
183
  readonly required?: boolean;
176
184
  readonly sortable?: boolean;
185
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
177
186
  readonly filterable?: boolean;
178
187
  readonly sensitive?: boolean;
179
188
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -189,6 +198,7 @@ export declare const tenantTable: import("@cosmicdrift/kumiko-framework/db").Ent
189
198
  readonly description?: string;
190
199
  readonly required?: boolean;
191
200
  readonly sortable?: boolean;
201
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
192
202
  readonly filterable?: boolean;
193
203
  readonly sensitive?: boolean;
194
204
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -9,6 +9,7 @@ export declare const tierAssignmentEntity: import("@cosmicdrift/kumiko-types/fie
9
9
  readonly options: ("billing" | "default" | "manual")[];
10
10
  readonly required?: boolean;
11
11
  readonly sortable?: boolean;
12
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
12
13
  readonly filterable?: boolean;
13
14
  readonly sensitive?: boolean;
14
15
  readonly default?: "billing" | "default" | "manual" | undefined;
@@ -16,6 +16,7 @@ export declare function createTierResolver<TTier extends string, TCaps>(deps: Ti
16
16
  readonly options: ("billing" | "default" | "manual")[];
17
17
  readonly required?: boolean;
18
18
  readonly sortable?: boolean;
19
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
19
20
  readonly filterable?: boolean;
20
21
  readonly sensitive?: boolean;
21
22
  readonly default?: "billing" | "default" | "manual" | undefined;
@@ -63,6 +63,7 @@ export declare const userEntity: import("@cosmicdrift/kumiko-types/fields").Enti
63
63
  readonly options: readonly ["active", "restricted", "deletionRequested", "deleted"];
64
64
  readonly required?: boolean;
65
65
  readonly sortable?: boolean;
66
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
66
67
  readonly filterable?: boolean;
67
68
  readonly sensitive?: boolean;
68
69
  readonly default?: "active" | "deleted" | "deletionRequested" | "restricted" | undefined;
@@ -86,6 +87,7 @@ export declare const userEntity: import("@cosmicdrift/kumiko-types/fields").Enti
86
87
  readonly description?: string;
87
88
  readonly required?: boolean;
88
89
  readonly sortable?: boolean;
90
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
89
91
  readonly filterable?: boolean;
90
92
  readonly sensitive?: boolean;
91
93
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -136,6 +138,7 @@ export declare const userTable: import("@cosmicdrift/kumiko-framework/db").Entit
136
138
  readonly options: readonly ["active", "restricted", "deletionRequested", "deleted"];
137
139
  readonly required?: boolean;
138
140
  readonly sortable?: boolean;
141
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
139
142
  readonly filterable?: boolean;
140
143
  readonly sensitive?: boolean;
141
144
  readonly default?: "active" | "deleted" | "deletionRequested" | "restricted" | undefined;
@@ -159,6 +162,7 @@ export declare const userTable: import("@cosmicdrift/kumiko-framework/db").Entit
159
162
  readonly description?: string;
160
163
  readonly required?: boolean;
161
164
  readonly sortable?: boolean;
165
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
162
166
  readonly filterable?: boolean;
163
167
  readonly sensitive?: boolean;
164
168
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -25,6 +25,7 @@ export declare const downloadAttemptEntity: import("@cosmicdrift/kumiko-types/fi
25
25
  readonly description?: string;
26
26
  readonly required?: boolean;
27
27
  readonly sortable?: boolean;
28
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
28
29
  readonly filterable?: boolean;
29
30
  readonly sensitive?: boolean;
30
31
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -63,6 +64,7 @@ export declare const downloadAttemptsTable: import("@cosmicdrift/kumiko-framewor
63
64
  readonly description?: string;
64
65
  readonly required?: boolean;
65
66
  readonly sortable?: boolean;
67
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
66
68
  readonly filterable?: boolean;
67
69
  readonly sensitive?: boolean;
68
70
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -10,6 +10,7 @@ export declare const exportDownloadTokenEntity: import("@cosmicdrift/kumiko-type
10
10
  readonly description?: string;
11
11
  readonly required?: boolean;
12
12
  readonly sortable?: boolean;
13
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
13
14
  readonly filterable?: boolean;
14
15
  readonly sensitive?: boolean;
15
16
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -25,6 +26,7 @@ export declare const exportDownloadTokenEntity: import("@cosmicdrift/kumiko-type
25
26
  readonly description?: string;
26
27
  readonly required?: boolean;
27
28
  readonly sortable?: boolean;
29
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
28
30
  readonly filterable?: boolean;
29
31
  readonly sensitive?: boolean;
30
32
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -40,6 +42,7 @@ export declare const exportDownloadTokenEntity: import("@cosmicdrift/kumiko-type
40
42
  readonly description?: string;
41
43
  readonly required?: boolean;
42
44
  readonly sortable?: boolean;
45
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
43
46
  readonly filterable?: boolean;
44
47
  readonly sensitive?: boolean;
45
48
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -55,6 +58,7 @@ export declare const exportDownloadTokenEntity: import("@cosmicdrift/kumiko-type
55
58
  readonly description?: string;
56
59
  readonly required?: boolean;
57
60
  readonly sortable?: boolean;
61
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
58
62
  readonly filterable?: boolean;
59
63
  readonly sensitive?: boolean;
60
64
  readonly default?: number;
@@ -81,6 +85,7 @@ export declare const exportDownloadTokensTable: import("@cosmicdrift/kumiko-fram
81
85
  readonly description?: string;
82
86
  readonly required?: boolean;
83
87
  readonly sortable?: boolean;
88
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
84
89
  readonly filterable?: boolean;
85
90
  readonly sensitive?: boolean;
86
91
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -96,6 +101,7 @@ export declare const exportDownloadTokensTable: import("@cosmicdrift/kumiko-fram
96
101
  readonly description?: string;
97
102
  readonly required?: boolean;
98
103
  readonly sortable?: boolean;
104
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
99
105
  readonly filterable?: boolean;
100
106
  readonly sensitive?: boolean;
101
107
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -111,6 +117,7 @@ export declare const exportDownloadTokensTable: import("@cosmicdrift/kumiko-fram
111
117
  readonly description?: string;
112
118
  readonly required?: boolean;
113
119
  readonly sortable?: boolean;
120
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
114
121
  readonly filterable?: boolean;
115
122
  readonly sensitive?: boolean;
116
123
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -126,6 +133,7 @@ export declare const exportDownloadTokensTable: import("@cosmicdrift/kumiko-fram
126
133
  readonly description?: string;
127
134
  readonly required?: boolean;
128
135
  readonly sortable?: boolean;
136
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
129
137
  readonly filterable?: boolean;
130
138
  readonly sensitive?: boolean;
131
139
  readonly default?: number;
@@ -25,6 +25,7 @@ export declare const exportJobEntity: import("@cosmicdrift/kumiko-types/fields")
25
25
  readonly options: readonly ["pending", "running", "done", "failed"];
26
26
  readonly required?: boolean;
27
27
  readonly sortable?: boolean;
28
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
28
29
  readonly filterable?: boolean;
29
30
  readonly sensitive?: boolean;
30
31
  readonly default?: "done" | "failed" | "pending" | "running" | undefined;
@@ -48,6 +49,7 @@ export declare const exportJobEntity: import("@cosmicdrift/kumiko-types/fields")
48
49
  readonly description?: string;
49
50
  readonly required?: boolean;
50
51
  readonly sortable?: boolean;
52
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
51
53
  readonly filterable?: boolean;
52
54
  readonly sensitive?: boolean;
53
55
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -63,6 +65,7 @@ export declare const exportJobEntity: import("@cosmicdrift/kumiko-types/fields")
63
65
  readonly description?: string;
64
66
  readonly required?: boolean;
65
67
  readonly sortable?: boolean;
68
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
66
69
  readonly filterable?: boolean;
67
70
  readonly sensitive?: boolean;
68
71
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -78,6 +81,7 @@ export declare const exportJobEntity: import("@cosmicdrift/kumiko-types/fields")
78
81
  readonly description?: string;
79
82
  readonly required?: boolean;
80
83
  readonly sortable?: boolean;
84
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
81
85
  readonly filterable?: boolean;
82
86
  readonly sensitive?: boolean;
83
87
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -96,6 +100,7 @@ export declare const exportJobEntity: import("@cosmicdrift/kumiko-types/fields")
96
100
  readonly description?: string;
97
101
  readonly required?: boolean;
98
102
  readonly sortable?: boolean;
103
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
99
104
  readonly filterable?: boolean;
100
105
  readonly sensitive?: boolean;
101
106
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -114,6 +119,7 @@ export declare const exportJobEntity: import("@cosmicdrift/kumiko-types/fields")
114
119
  readonly description?: string;
115
120
  readonly required?: boolean;
116
121
  readonly sortable?: boolean;
122
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
117
123
  readonly filterable?: boolean;
118
124
  readonly sensitive?: boolean;
119
125
  readonly default?: number;
@@ -135,6 +141,7 @@ export declare const exportJobsTable: import("@cosmicdrift/kumiko-framework/db")
135
141
  readonly options: readonly ["pending", "running", "done", "failed"];
136
142
  readonly required?: boolean;
137
143
  readonly sortable?: boolean;
144
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
138
145
  readonly filterable?: boolean;
139
146
  readonly sensitive?: boolean;
140
147
  readonly default?: "done" | "failed" | "pending" | "running" | undefined;
@@ -158,6 +165,7 @@ export declare const exportJobsTable: import("@cosmicdrift/kumiko-framework/db")
158
165
  readonly description?: string;
159
166
  readonly required?: boolean;
160
167
  readonly sortable?: boolean;
168
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
161
169
  readonly filterable?: boolean;
162
170
  readonly sensitive?: boolean;
163
171
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -173,6 +181,7 @@ export declare const exportJobsTable: import("@cosmicdrift/kumiko-framework/db")
173
181
  readonly description?: string;
174
182
  readonly required?: boolean;
175
183
  readonly sortable?: boolean;
184
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
176
185
  readonly filterable?: boolean;
177
186
  readonly sensitive?: boolean;
178
187
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -188,6 +197,7 @@ export declare const exportJobsTable: import("@cosmicdrift/kumiko-framework/db")
188
197
  readonly description?: string;
189
198
  readonly required?: boolean;
190
199
  readonly sortable?: boolean;
200
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
191
201
  readonly filterable?: boolean;
192
202
  readonly sensitive?: boolean;
193
203
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -206,6 +216,7 @@ export declare const exportJobsTable: import("@cosmicdrift/kumiko-framework/db")
206
216
  readonly description?: string;
207
217
  readonly required?: boolean;
208
218
  readonly sortable?: boolean;
219
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
209
220
  readonly filterable?: boolean;
210
221
  readonly sensitive?: boolean;
211
222
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -224,6 +235,7 @@ export declare const exportJobsTable: import("@cosmicdrift/kumiko-framework/db")
224
235
  readonly description?: string;
225
236
  readonly required?: boolean;
226
237
  readonly sortable?: boolean;
238
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
227
239
  readonly filterable?: boolean;
228
240
  readonly sensitive?: boolean;
229
241
  readonly default?: number;
@@ -24,6 +24,7 @@ export declare const waitlistEntryEntity: import("@cosmicdrift/kumiko-types/fiel
24
24
  readonly options: readonly ["pending", "invited", "provisioned", "rejected"];
25
25
  readonly required?: boolean;
26
26
  readonly sortable?: boolean;
27
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
27
28
  readonly filterable?: boolean;
28
29
  readonly sensitive?: boolean;
29
30
  readonly default?: "invited" | "pending" | "provisioned" | "rejected" | undefined;
@@ -47,6 +48,7 @@ export declare const waitlistEntryEntity: import("@cosmicdrift/kumiko-types/fiel
47
48
  readonly description?: string;
48
49
  readonly required?: boolean;
49
50
  readonly sortable?: boolean;
51
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
50
52
  readonly filterable?: boolean;
51
53
  readonly sensitive?: boolean;
52
54
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -62,6 +64,7 @@ export declare const waitlistEntryEntity: import("@cosmicdrift/kumiko-types/fiel
62
64
  readonly description?: string;
63
65
  readonly required?: boolean;
64
66
  readonly sortable?: boolean;
67
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
65
68
  readonly filterable?: boolean;
66
69
  readonly sensitive?: boolean;
67
70
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -80,6 +83,7 @@ export declare const waitlistEntryEntity: import("@cosmicdrift/kumiko-types/fiel
80
83
  readonly description?: string;
81
84
  readonly required?: boolean;
82
85
  readonly sortable?: boolean;
86
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
83
87
  readonly filterable?: boolean;
84
88
  readonly sensitive?: boolean;
85
89
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -119,6 +123,7 @@ export declare const waitlistEntryTable: import("@cosmicdrift/kumiko-framework/d
119
123
  readonly options: readonly ["pending", "invited", "provisioned", "rejected"];
120
124
  readonly required?: boolean;
121
125
  readonly sortable?: boolean;
126
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
122
127
  readonly filterable?: boolean;
123
128
  readonly sensitive?: boolean;
124
129
  readonly default?: "invited" | "pending" | "provisioned" | "rejected" | undefined;
@@ -142,6 +147,7 @@ export declare const waitlistEntryTable: import("@cosmicdrift/kumiko-framework/d
142
147
  readonly description?: string;
143
148
  readonly required?: boolean;
144
149
  readonly sortable?: boolean;
150
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
145
151
  readonly filterable?: boolean;
146
152
  readonly sensitive?: boolean;
147
153
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -157,6 +163,7 @@ export declare const waitlistEntryTable: import("@cosmicdrift/kumiko-framework/d
157
163
  readonly description?: string;
158
164
  readonly required?: boolean;
159
165
  readonly sortable?: boolean;
166
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
160
167
  readonly filterable?: boolean;
161
168
  readonly sensitive?: boolean;
162
169
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
@@ -175,6 +182,7 @@ export declare const waitlistEntryTable: import("@cosmicdrift/kumiko-framework/d
175
182
  readonly description?: string;
176
183
  readonly required?: boolean;
177
184
  readonly sortable?: boolean;
185
+ readonly sortNulls?: import("@cosmicdrift/kumiko-types/fields").SortNulls;
178
186
  readonly filterable?: boolean;
179
187
  readonly sensitive?: boolean;
180
188
  readonly access?: import("@cosmicdrift/kumiko-types/fields").FieldAccess;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cosmicdrift/kumiko-bundled-features",
3
- "version": "0.396.0",
3
+ "version": "0.397.0",
4
4
  "description": "Built-in features — tenant, user, auth, delivery. The stuff you'd rewrite anyway, already typed.",
5
5
  "license": "MIT",
6
6
  "author": "Marc Frost <marc@cosmicdriftgamestudio.com>",
@@ -566,9 +566,9 @@
566
566
  }
567
567
  },
568
568
  "dependencies": {
569
- "@cosmicdrift/kumiko-framework": "0.396.0",
570
- "@cosmicdrift/kumiko-renderer": "0.396.0",
571
- "@cosmicdrift/kumiko-types": "0.396.0",
569
+ "@cosmicdrift/kumiko-framework": "0.397.0",
570
+ "@cosmicdrift/kumiko-renderer": "0.397.0",
571
+ "@cosmicdrift/kumiko-types": "0.397.0",
572
572
  "@mollie/api-client": "^4.5.0",
573
573
  "@node-rs/argon2": "^2.0.2",
574
574
  "@tiptap/core": "^3.31.3",
@@ -1158,17 +1158,17 @@
1158
1158
  ],
1159
1159
  "devDependencies": {
1160
1160
  "@testing-library/user-event": "^14.6.1",
1161
- "@cosmicdrift/kumiko-locale-de": "0.396.0",
1162
- "@cosmicdrift/kumiko-locale-es": "0.396.0",
1163
- "@cosmicdrift/kumiko-locale-fr": "0.396.0",
1164
- "@cosmicdrift/kumiko-locale-it": "0.396.0",
1165
- "@cosmicdrift/kumiko-renderer-mail-html": "0.396.0",
1161
+ "@cosmicdrift/kumiko-locale-de": "0.397.0",
1162
+ "@cosmicdrift/kumiko-locale-es": "0.397.0",
1163
+ "@cosmicdrift/kumiko-locale-fr": "0.397.0",
1164
+ "@cosmicdrift/kumiko-locale-it": "0.397.0",
1165
+ "@cosmicdrift/kumiko-renderer-mail-html": "0.397.0",
1166
1166
  "jsqr": "^1.4.0",
1167
1167
  "unpdf": "^1.8.1",
1168
- "@cosmicdrift/kumiko-testing": "0.396.0"
1168
+ "@cosmicdrift/kumiko-testing": "0.397.0"
1169
1169
  },
1170
1170
  "peerDependencies": {
1171
- "@cosmicdrift/kumiko-testing": "0.396.0"
1171
+ "@cosmicdrift/kumiko-testing": "0.397.0"
1172
1172
  },
1173
1173
  "peerDependenciesMeta": {
1174
1174
  "@cosmicdrift/kumiko-testing": {
@@ -1,4 +1,10 @@
1
1
  [
2
+ {
3
+ "version": "0.397.0",
4
+ "type": "improvement",
5
+ "title": "Cap limits see the tenant and can read its add-ons",
6
+ "detail": "`caps-usage` and `tenant-caps-list` resolved each limit from the tier and the tenant's config only, so an app whose limit depends on booked add-ons had to show the bare tier limit while enforcement already counted the add-ons (a 300 % bar for a tenant that may still provision). Both queries now pass `tenantId` (the target tenant, also on the SystemAdmin override and per listed row) and `db`. The new context type is exported as `CapSpecLimitContext`; existing limits that take the narrower `CapLimitContext` keep compiling."
7
+ },
2
8
  {
3
9
  "version": "0.394.0",
4
10
  "type": "improvement",