import { RollTemplateEntity } from '../domain/entities/roll-template-entity.js';
import { RollTemplateRepository } from '../ports/secondary/roll-template-repository.js';
/**
 * Use case for listing roll templates.
 */
export declare class ListTemplatesUseCase {
    private readonly templateRepository;
    /**
     * Creates a new ListTemplatesUseCase instance.
     * @param templateRepository The repository to use for template listing.
     */
    constructor(templateRepository: RollTemplateRepository);
    /**
     * Executes the use case.
     * @param filter Optional filter criteria.
     * @returns An array of templates matching the filter.
     */
    execute(filter?: Record<string, unknown>): Promise<RollTemplateEntity[]>;
}
