jackmellis/jpex

View on GitHub
src/types/index.ts

Summary

Maintainability
A
0 mins
Test Coverage
export * from './base';
export * from './JpexInstance';
export * from './BuiltIns';
export * from './custom';

export type Lifecycle = 'application' | 'class' | 'instance' | 'none';

export type Precedence = 'active' | 'passive';

export type AnyFunction<R = any> = (...args: any[]) => R;
export interface AnyConstructor<T = any> {
  new (...args: any[]): T;
}

export type Dependency = string;

export interface Definition {
  dependencies?: Dependency[];
}

export interface Factory extends Definition {
  fn: AnyFunction;
  lifecycle: Lifecycle;
  resolved?: boolean;
  value?: any;
  with?: Record<string, any>;
}