Skip to content

@joakimbugge/seeder


@joakimbugge/seeder / SeederInterface

Interface: SeederInterface<TContext, TResult>

Defined in: packages/seeder/src/seeder/decorator.ts:13

Interface that seeder classes must implement.

  • TContext — lets ORM packages expose a narrowed version whose run method receives the ORM-specific context (e.g. dataSource, em). Defaults to SeederRunContext.
  • TResult — the value returned by run. Inferred by runSeeders so that results.get(MySeeder) resolves to the correct type without casting.

Type Parameters

TContext

TContext extends SeedContext = SeederRunContext

TResult

TResult = unknown

Methods

onBefore()?

ts
optional onBefore(): void | Promise<void>;

Defined in: packages/seeder/src/seeder/decorator.ts:19

Called before run() executes.

Returns

void | Promise<void>


onError()?

ts
optional onError(error): void | Promise<void>;

Defined in: packages/seeder/src/seeder/decorator.ts:23

Called when run() throws. The error is re-thrown after this returns.

Parameters

error

unknown

Returns

void | Promise<void>


onFinally()?

ts
optional onFinally(durationMs): void | Promise<void>;

Defined in: packages/seeder/src/seeder/decorator.ts:25

Always called after run() completes — whether it succeeded or threw. Mirrors try/catch/finally.

Parameters

durationMs

number

Returns

void | Promise<void>


onSuccess()?

ts
optional onSuccess(durationMs): void | Promise<void>;

Defined in: packages/seeder/src/seeder/decorator.ts:21

Called after run() completes successfully, with the time it took in milliseconds.

Parameters

durationMs

number

Returns

void | Promise<void>


run()

ts
run(context): Promise<TResult>;

Defined in: packages/seeder/src/seeder/decorator.ts:17

Parameters

context

TContext

Returns

Promise<TResult>

Released under the MIT License.