import { type ApplicationService } from '@adonisjs/core/types'; import { type LucidRow } from '../types/model.js'; /** * Provides database assertion methods for use inside test bodies. * Exposed on Japa's TestContext as `db`. */ export declare class DatabaseTestAssertions { #private; protected app: ApplicationService; protected connectionName?: string | undefined; constructor(app: ApplicationService, connectionName?: string | undefined); /** * Returns a new instance of assertions configured for the given connection */ connection(connectionName: string): DatabaseTestAssertions; /** * Assert that the given table has rows matching the provided data. * When `count` is provided, asserts that exactly that many matching rows exist. */ assertHas(table: string, data: Record, count?: number): Promise; /** * Assert that the given table has no rows matching the provided data. */ assertMissing(table: string, data: Record): Promise; /** * Assert that the given table has exactly the expected number of rows. */ assertCount(table: string, expectedCount: number): Promise; /** * Assert that the given table is empty (has no rows). */ assertEmpty(table: string): Promise; /** * Assert that a model instance exists in the database. */ assertModelExists(model: LucidRow): Promise; /** * Assert that a model instance does not exist in the database. */ assertModelMissing(model: LucidRow): Promise; }