@athenna/database
Version:
The Athenna database handler for SQL/NoSQL.
42 lines (41 loc) • 1.19 kB
TypeScript
/**
* @athenna/database
*
* (c) João Lenon <lenon@athenna.io>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
import type { BaseMigration } from '#src/database/migrations/BaseMigration';
type Source = {
name: string;
Migration: new (...args: any[]) => BaseMigration;
};
export declare class MigrationSource {
connection: any;
constructor(connection: string);
/**
* Verify if migration is able to run by connection.
*/
private isAbleToRun;
/**
* Get all the migrations from migrations path and import
* as modules. This method will be used by "getMigration"
* method later to get the migrations "up"/"down" methods.
*/
getMigrations(): Promise<Source[]>;
/**
* Get the migration name that will be used to set in
* migrations table.
*/
getMigrationName(source: Source): string;
/**
* Creates a new migration instance and return the up/down
* methods in object.
*/
getMigration(source: Source): Promise<{
up: (knex: any) => any;
down: (knex: any) => any;
}>;
}
export {};