import { Observable } from 'rxjs';
import { TodoEntity } from '../../../domain/entity/todo.entity';
import { TodoRepository } from '../../../domain/repository/todo.repository';
import { TodoMockDto } from './dto/todo-mock.dto';
export declare class TodoInMemoryRepository implements TodoRepository {
    private data;
    constructor(data?: TodoMockDto[]);
    private mapper;
    getAllTodos(): Observable<TodoEntity[]>;
    getCompletedTodos(): Observable<TodoEntity[]>;
    getActiveTodos(): Observable<TodoEntity[]>;
    getActiveTodosCount(): Observable<number>;
    addTodo(name: string): Observable<TodoEntity>;
    getTodoById(id: string): Observable<TodoEntity>;
    removeTodo(id: string): Observable<TodoEntity>;
    removeCompletedTodos(): Observable<TodoEntity[]>;
    markTodoAsCompleted(id: string, isCompleted: boolean): Observable<TodoEntity>;
    markAllTodosAsCompleted(): Observable<TodoEntity[]>;
    markAllTodosAsActive(): Observable<TodoEntity[]>;
}
