UNPKG

@palmares/drizzle-engine

Version:

This is the engine that wraps the hole drizzle interface in a way palmares can understand and have full control of

301 lines 9.57 kB
import type { Field, FieldWithOperationType, TextField } from '@palmares/databases'; export declare class DefaultBuilder<TField extends Field<any, any, any> | TextField<any, any, any>> { _: { field: TField; type: string; }; constructor(fieldInstance: TField, type: string); $type<TType>(): (Field<{ create: TType; read: TType; update: TType; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; hasDefaultValue: any; underscored: any; isPrimaryKey: any; auto: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<TType>> & DefaultBuilder<TField>) | (TextField<{ create: TType; read: TType; update: TType; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; underscored: any; isPrimaryKey: any; auto: any; hasDefaultValue: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<TType>> & DefaultBuilder<TField>); $default(cb: `() => ${string}`): (Field<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; hasDefaultValue: any; underscored: any; isPrimaryKey: any; auto: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>) | (TextField<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; underscored: any; isPrimaryKey: any; auto: any; hasDefaultValue: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>); $onUpdate(cb: `() => ${string}`): (Field<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; hasDefaultValue: any; underscored: any; isPrimaryKey: any; auto: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>) | (TextField<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; underscored: any; isPrimaryKey: any; auto: any; hasDefaultValue: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>); references(cb: `() => ${string}`): (Field<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; hasDefaultValue: any; underscored: any; isPrimaryKey: any; auto: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>) | (TextField<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; underscored: any; isPrimaryKey: any; auto: any; hasDefaultValue: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>); primaryKey(): (Field<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; hasDefaultValue: any; underscored: any; isPrimaryKey: any; auto: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>) | (TextField<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; underscored: any; isPrimaryKey: any; auto: any; hasDefaultValue: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>); unique(): (Field<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; hasDefaultValue: any; underscored: any; isPrimaryKey: any; auto: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>) | (TextField<{ create: any; read: any; update: any; }, { [x: string]: any; [x: number]: any; [x: symbol]: any; } & { unique: any; allowNull: any; dbIndex: any; underscored: any; isPrimaryKey: any; auto: any; hasDefaultValue: any; defaultValue: any; databaseName: any; typeName: any; engineInstance: any; customAttributes: any; }, import("@palmares/databases/dist/src/models/fields/types").FieldWithOperationTypeForSearch<any>> & DefaultBuilder<TField>); notNull<TFieldData extends { fieldType: 'field' | 'textField'; type: { create: any; update: any; read: any; }; defintions: any; } = TField extends TextField<infer TType, infer TDefinitions, any> ? { fieldType: 'textField'; type: { create: NonNullable<TType['read']>; update: NonNullable<TType['read']>; read: NonNullable<TType['read']>; }; defintions: TDefinitions; } : TField extends Field<infer TType, infer TDefinitions, any> ? { fieldType: 'field'; type: { create: NonNullable<TType['read']>; update: NonNullable<TType['read']>; read: NonNullable<TType['read']>; }; defintions: TDefinitions; } : { fieldType: 'field'; type: { create: any; update: any; read: any; }; defintions: any; }>(): TFieldData['fieldType'] extends 'field' ? Field<TFieldData['type'], TFieldData['defintions'], TFieldData['type']['read'] extends number | Date ? Pick<FieldWithOperationType<TFieldData['type']['read']>, 'lessThan' | 'greaterThan' | 'and' | 'in' | 'or' | 'eq' | 'is' | 'between'> : Pick<FieldWithOperationType<TFieldData['type']['read']>, 'and' | 'in' | 'or' | 'eq' | 'is'>> : TextField<TFieldData['type'], TFieldData['defintions'], TFieldData['type']['read'] extends number | Date ? Pick<FieldWithOperationType<TFieldData['type']['read']>, 'lessThan' | 'greaterThan' | 'and' | 'in' | 'or' | 'eq' | 'is' | 'between'> : Pick<FieldWithOperationType<TFieldData['type']['read']>, 'and' | 'in' | 'or' | 'eq' | 'is'>>; generatedAlwaysAs(cb: `() => ${string}`): TField & DefaultBuilder<TField>; } //# sourceMappingURL=utils.d.ts.map