import { Repository, DataSource } from 'typeorm';
import { ProgramStepTemplateMap } from 'src/common/entities/program-step-template-map.entity';
import { CommunicationTemplatesMaster } from 'src/common/entities/communication-templates-master.entity';
import { CommunicationStepSelection } from '../interfaces/communication-config.interface';
export declare class ProgramStepTemplateMapRepository {
    private readonly repository;
    private readonly masterRepository;
    private readonly dataSource;
    private readonly logger;
    constructor(repository: Repository<ProgramStepTemplateMap>, masterRepository: Repository<CommunicationTemplatesMaster>, dataSource: DataSource);
    findEnabledByProgram(programId: number): Promise<ProgramStepTemplateMap[]>;
    findEnabledMasterIdsByProgramStep(programId: number, step: string): Promise<number[]>;
    seedDefaultsForProgram(programId: number, programTypeId: number, userId?: number): Promise<void>;
    replaceForProgram(programId: number, perStep: CommunicationStepSelection[], userId?: number): Promise<void>;
}
