@riao/dbal
Version:
20 lines (19 loc) • 787 B
TypeScript
import { DatabaseQueryBuilder } from '../dml';
import { TriggerEvent, TriggerOptions, TriggerTiming } from './trigger-options';
export declare abstract class DatabaseTrigger {
protected abstract name: string;
protected timing: TriggerTiming;
protected event: TriggerEvent;
protected table: string;
constructor(options: DatabaseTriggerConstructorOptions);
getTrigger(options: GetTriggerOptions): TriggerOptions;
protected getName(): string;
protected abstract getBody(options: GetTriggerBodyOptions): DatabaseQueryBuilder;
}
export interface DatabaseTriggerConstructorOptions {
table: string;
}
export interface GetTriggerBodyOptions {
queryBuilder: DatabaseQueryBuilder;
}
export type GetTriggerOptions = GetTriggerBodyOptions;