import { ForeignCommand } from './Command'; /** * Fluent configuration of a foreign-key constraint, returned by * `table.foreign(...)`: * * table.foreign('userId').references('id').on('users').onDelete('cascade') * * It mutates the underlying ForeignCommand held by the Blueprint, so every * chained call keeps configuring the same constraint. */ export declare class ForeignKeyDefinition { private readonly command; constructor(command: ForeignCommand); /** The referenced column(s) on the foreign table. */ references(columns: string | string[]): this; /** The referenced (foreign) table. */ on(table: string): this; /** ON DELETE action (e.g. 'cascade', 'set null', 'restrict', 'no action'). */ onDelete(action: string): this; /** ON UPDATE action. */ onUpdate(action: string): this; /** Sets an explicit constraint name. */ name(name: string): this; cascadeOnDelete(): this; restrictOnDelete(): this; nullOnDelete(): this; cascadeOnUpdate(): this; restrictOnUpdate(): this; }