@cosmicdrift/kumiko-types 0.366.0 → 0.368.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.
package/dist/config.d.ts CHANGED
@@ -210,6 +210,9 @@ export type TemplateScalarVariableDef = (TemplateVariableCommon & {
210
210
  }) | (TemplateVariableCommon & {
211
211
  readonly type: "date";
212
212
  readonly example?: string;
213
+ }) | (TemplateVariableCommon & {
214
+ readonly type: "percent";
215
+ readonly example?: number;
213
216
  });
214
217
  export type TemplateListVariableDef = TemplateVariableCommon & {
215
218
  readonly type: "list";
@@ -250,6 +253,8 @@ export type NotificationDefinition = {
250
253
  readonly meta?: Readonly<Record<string, NotificationTemplateMeta>>;
251
254
  readonly renamedFrom?: readonly string[];
252
255
  readonly localizedTemplate?: () => NotificationLocalizedTemplate;
256
+ readonly systemOnly?: boolean;
257
+ readonly unsubscribe?: boolean;
253
258
  };
254
259
  export type PluralForms = {
255
260
  readonly zero?: string;
package/dist/feature.d.ts CHANGED
@@ -326,6 +326,8 @@ export type FeatureRegistrar<TFeature extends string = string> = {
326
326
  readonly meta?: Readonly<Record<string, NotificationTemplateMeta>>;
327
327
  readonly localizedTemplate?: () => NotificationLocalizedTemplate;
328
328
  readonly renamedFrom?: readonly string[];
329
+ readonly systemOnly?: boolean;
330
+ readonly unsubscribe?: boolean;
329
331
  }): void;
330
332
  notification(definition: {
331
333
  readonly name: string;
@@ -341,6 +343,8 @@ export type FeatureRegistrar<TFeature extends string = string> = {
341
343
  readonly meta?: Readonly<Record<string, NotificationTemplateMeta>>;
342
344
  readonly localizedTemplate?: () => NotificationLocalizedTemplate;
343
345
  readonly renamedFrom?: readonly string[];
346
+ readonly systemOnly?: boolean;
347
+ readonly unsubscribe?: boolean;
344
348
  }): void;
345
349
  translations(def: TranslationsDef): void;
346
350
  defineEvent<const TInner extends string, TPayload>(name: TInner, schema: ZodType<TPayload>, options: {
package/dist/fields.d.ts CHANGED
@@ -29,7 +29,7 @@ export type ResolvedPiiFlags = {
29
29
  * that lives purely in an FK column. */
30
30
  readonly subjectRef?: true;
31
31
  };
32
- export type EntityPiiAbsentSubject = "tenant";
32
+ export type EntityPiiAbsentSubject = "tenant" | "self";
33
33
  export type PersonalSubject = "self" | {
34
34
  readonly of: string;
35
35
  readonly whenAbsent?: EntityPiiAbsentSubject;
@@ -270,8 +270,6 @@ export type AppContext = SharedContextFields & {
270
270
  * die einzige Möglichkeit für den Handler zu wissen WELCHER Trigger
271
271
  * gefeuert hat. Cron- und manual-Jobs lassen das Feld undefined. */
272
272
  readonly triggerName?: string;
273
- readonly _userId?: string | undefined;
274
- readonly _handlerType?: string | undefined;
275
273
  /** Optionaler Geo→Zone-Adapter. Wenn gesetzt (via buildServer-context oder
276
274
  * runProdApp/runDevApp extraContext), reicht der Dispatcher ihn an
277
275
  * ctx.tz.fromCoordinates / fromAddress weiter. Ohne Provider werfen diese. */
@@ -310,8 +308,6 @@ export type HandlerContext<TMap extends object = KumikoEventTypeMap> = SharedCon
310
308
  readonly id: string;
311
309
  readonly tenantId: TenantId;
312
310
  } | null;
313
- readonly _userId?: string | undefined;
314
- readonly _handlerType?: string | undefined;
315
311
  /** Keyed digest for handler-owned rate-limit keys, so Redis never holds a
316
312
  * plaintext or plainly hashed identifier. Scoped to the running handler:
317
313
  * the same input yields a different digest per handler and never matches a
@@ -421,7 +417,7 @@ type CharKind<C extends string> = C extends Lowercase<C> ? (C extends Uppercase<
421
417
  * shape the runtime emits via `qn(toKebab(feature), "event", toKebab(inner))`.
422
418
  */
423
419
  export type QualifiedEventName<TFeature extends string, TInner extends string> = `${CamelToKebab<TFeature>}:event:${CamelToKebab<TInner>}`;
424
- export type EventPiiAbsentSubject = "plaintext" | "tenant";
420
+ export type EventPiiAbsentSubject = "plaintext" | "tenant" | "self";
425
421
  export type EventPiiSubject = {
426
422
  readonly personal: {
427
423
  readonly of: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cosmicdrift/kumiko-types",
3
- "version": "0.366.0",
3
+ "version": "0.368.0",
4
4
  "description": "Framework-Type-Definitions für Kumiko — FeatureDefinition, BootCheck-Types und die reinen Engine-Types. Erlaubt Downstream-Konsumenten, gegen die Type-Contracts zu bauen, ohne das ganze Framework-Package zu importieren. Enthaelt keine identitaets-sensitiven Runtime-Werte mehr (Error-Klassen leben seit #1629 in kumiko-framework, Brand-Symbole nutzen Symbol.for) und ist deshalb eine plain dependency, keine peerDependency.",
5
5
  "license": "BUSL-1.1",
6
6
  "author": "Marc Frost <marc@cosmicdriftgamestudio.com>",