loopback4-seeder
Version:
Run seeders to populate database
37 lines (36 loc) • 1.21 kB
TypeScript
import { Binding } from '@loopback/core';
import { DefaultCrudRepository, Entity } from '@loopback/repository';
/**
* Name of the seed extension point
*/
export declare const SEEDER = "seeder";
/**
* A `BindingTemplate` function to configure the binding as a seed.
*
* @param binding - Binding object
*/
export declare function asSeed<T = unknown>(binding: Binding<T>): Binding<T>;
/**
* Interface used by the decorator to typehint passed arguments.
*/
export interface SeederMetadata {
name?: string;
}
/**
* Interface used by Application
*/
export interface SeedMixinInterface {
loadSeeds(filterClasses?: string[]): Promise<void>;
}
export interface SeederInterface {
beforeSeed(): Promise<void>;
seed(): Promise<void>;
}
export declare const loadByModel: <T extends Entity, ID>(items: T[], repository$: DefaultCrudRepository<T, ID, {}>, type: new (it: Partial<T>) => T) => Promise<void>;
export declare abstract class Seeder implements SeederInterface {
abstract seed(): Promise<void>;
beforeSeed(): Promise<void>;
loadByModel<I extends Entity, ID>(items: I[], repository$: DefaultCrudRepository<I, ID>, type: {
new (it: Partial<I>): I;
}): Promise<void>;
}