@palmares/databases
Version:
Add support for working with databases with palmares framework
57 lines • 4.52 kB
TypeScript
import { Operation } from './operation';
import type { ActionToGenerateType, ChangeFieldToGenerateData, CreateFieldToGenerateData, DeleteFieldToGenerateData, RenameFieldToGenerateData, ToStringFunctionReturnType } from './types';
import type { DatabaseAdapter } from '../../engine';
import type { Field } from '../../models/fields';
import type { Migration } from '../migrate/migration';
import type { State } from '../state';
import type { OriginalOrStateModelsByNameType } from '../types';
/**
* This operation is used when a new field is created on a specific model. If the hole model is created
* we will just use CreateModel instead.
*/
export declare class CreateField extends Operation {
modelName: string;
fieldName: string;
fieldDefinition: Field<any, any>;
constructor(modelName: string, fieldName: string, fieldDefinition: Field<any, any>);
stateForwards(state: State, domainName: string, domainPath: string): Promise<void>;
run(migration: Migration, engineInstance: DatabaseAdapter, fromState: OriginalOrStateModelsByNameType, toState: OriginalOrStateModelsByNameType, returnOfInit: any): Promise<void>;
static toGenerate(domainName: string, domainPath: string, modelName: string, data: CreateFieldToGenerateData): Promise<ActionToGenerateType<CreateFieldToGenerateData>>;
static toString(engine: DatabaseAdapter, indentation: number | undefined, data: ActionToGenerateType<CreateFieldToGenerateData>): Promise<ToStringFunctionReturnType>;
static describe(data: ActionToGenerateType<CreateFieldToGenerateData>): Promise<string>;
}
export declare class ChangeField extends Operation {
modelName: string;
fieldName: string;
fieldDefinitionBefore: Field<any, any>;
fieldDefinitionAfter: Field<any, any>;
constructor(modelName: string, fieldName: string, fieldDefinitionBefore: Field<any, any>, fieldDefinitionAfter: Field<any, any>);
stateForwards(state: State, domainName: string, domainPath: string): Promise<void>;
run(migration: Migration, engineInstance: DatabaseAdapter, fromState: OriginalOrStateModelsByNameType, toState: OriginalOrStateModelsByNameType, returnOfInit: any): Promise<void>;
static toGenerate(domainName: string, domainPath: string, modelName: string, data: ChangeFieldToGenerateData): Promise<ActionToGenerateType<ChangeFieldToGenerateData>>;
static toString(engine: DatabaseAdapter, indentation: number | undefined, data: ActionToGenerateType<ChangeFieldToGenerateData>): Promise<ToStringFunctionReturnType>;
static describe(data: ActionToGenerateType<ChangeFieldToGenerateData>): Promise<string>;
}
export declare class RenameField extends Operation {
modelName: string;
fieldNameBefore: string;
fieldNameAfter: string;
fieldDefinition: Field<any, any>;
constructor(modelName: string, fieldNameBefore: string, fieldNameAfter: string, fieldDefinition: Field<any, any>);
stateForwards(state: State, domainName: string, domainPath: string): Promise<void>;
run(migration: Migration, engineInstance: DatabaseAdapter, fromState: OriginalOrStateModelsByNameType, toState: OriginalOrStateModelsByNameType, returnOfInit: any): Promise<void>;
static toGenerate(domainName: string, domainPath: string, modelName: string, data: RenameFieldToGenerateData): Promise<ActionToGenerateType<RenameFieldToGenerateData>>;
static toString(engine: DatabaseAdapter, indentation: number | undefined, data: ActionToGenerateType<RenameFieldToGenerateData>): Promise<ToStringFunctionReturnType>;
static describe(data: ActionToGenerateType<RenameFieldToGenerateData>): Promise<string>;
}
export declare class DeleteField extends Operation {
modelName: string;
fieldName: string;
constructor(modelName: string, fieldName: string);
stateForwards(state: State, domainName: string, domainPath: string): Promise<void>;
run(migration: Migration, engineInstance: DatabaseAdapter, fromState: OriginalOrStateModelsByNameType, toState: OriginalOrStateModelsByNameType, returnOfInit: any): Promise<void>;
static toGenerate(domainName: string, domainPath: string, modelName: string, data: DeleteFieldToGenerateData): Promise<ActionToGenerateType<DeleteFieldToGenerateData>>;
static toString(_engine: DatabaseAdapter, indentation: number | undefined, data: ActionToGenerateType<DeleteFieldToGenerateData>): Promise<ToStringFunctionReturnType>;
static describe(data: ActionToGenerateType<DeleteFieldToGenerateData>): Promise<string>;
}
//# sourceMappingURL=fields.d.ts.map