import { TableEntry } from '../domain/index.js';
import { TableRepository } from '../ports/index.js';
/**
 * Use case for updating an existing random table.
 */
export declare class UpdateTableUseCase {
    private readonly repository;
    /**
     * Creates a new UpdateTableUseCase instance.
     * @param repository The table repository to use.
     */
    constructor(repository: TableRepository);
    /**
     * Executes the use case.
     * @param id The ID of the table to update.
     * @param updates Object containing the updates to apply.
     */
    execute(id: string, updates: {
        name?: string;
        description?: string;
        entries?: {
            add?: TableEntry[];
            update?: {
                id: string;
                updates: Partial<Omit<TableEntry, 'id'>>;
            }[];
            remove?: string[];
        };
    }): Promise<void>;
}
