Type Alias RequiredKeys<T>

RequiredKeys<T>: {
    [K in keyof T]-?: {} extends Pick<T, K>
        ? never
        : K
}[keyof T]

Core public TypeScript types for BlueLibs Runner.

This file contains the strongly-typed contract for tasks, resources, events and middleware. It mirrors the mental model described in the README:

  • Tasks are functions
  • Resources are singletons (with init/dispose hooks)
  • Events are simple, strongly-typed emissions
  • Middleware can target both tasks and resources

DX goals:

  • Crystal‑clear generics and helper types that infer dependency shapes
  • Friendly JSDoc you can hover in editors to understand usage instantly
  • Safe overrides and strong typing around config and register mechanics

Type Parameters

  • T