import { Queryable } from '@databases/pg'; import { ClassQuery } from './getClasses'; import ConstraintType from './enums/ConstraintType'; import ForeignKeyAction from './enums/ForeginKeyAction'; import ForeignKeyMatchType from './enums/ForeignKeyMatchType'; export interface ConstraintQuery extends ClassQuery { } export interface Constraint { /** * N.B. the name of the constraint is not necessarily unique */ constraintName: string; constraintType: ConstraintType; /** * 0 if not a table constraint */ classID: number; /** * 0 if not a foreign key */ referencedClassID: number; foreignKeyUpdateAction: ForeignKeyAction; foreignKeyDeletionAction: ForeignKeyAction; foreignKeyMatchType: ForeignKeyMatchType; constraintDescription: string; tableAttributeNumbers: number[]; referencedAttributeNumbers: number[]; } export default function getConstraints(connection: Queryable, query: ConstraintQuery): Promise;