@themost/jspa
Version:
MOST Web Framework Persistence API
18 lines (17 loc) • 870 B
TypeScript
import { DataContextBase, DataModelBase } from '@themost/common';
import { ColumnAnnotation } from './Column';
declare interface ColumnDefaultArgs {
context: DataContextBase;
model: DataModelBase;
target: any;
}
declare interface ColumnDefaultAnnotation {
closure: (event: ColumnDefaultArgs) => any;
}
declare interface ColumnDefaultValueAnnotation extends ColumnAnnotation {
columnDefault?: ColumnDefaultAnnotation;
}
declare type ColumnDefaultClosure<T> = (event?: ColumnDefaultArgs) => Promise<T>;
declare type ColumnDefaultSimpleClosure<T> = (event?: ColumnDefaultArgs) => T;
declare function ColumnDefault<T>(closure: ColumnDefaultClosure<T> | ColumnDefaultSimpleClosure<T>): PropertyDecorator;
export { ColumnDefaultArgs, ColumnDefaultClosure, ColumnDefaultSimpleClosure, ColumnDefaultAnnotation, ColumnDefaultValueAnnotation, ColumnDefault };