/* © SRSoftware 2025 */
package de.srsoftware.umbrella.time;

import de.srsoftware.umbrella.core.exceptions.UmbrellaException;
import de.srsoftware.umbrella.core.model.Time;
import java.util.Collection;
import java.util.List;
import java.util.Map;

public interface TimeDb {
	Long delete(long timeId);

	Map<Long, Time> find(long userId, List<String> keys, boolean fulltext);

	Map<Long,Time> listTimes(Collection<Long> taskIds, boolean showClosed) throws UmbrellaException;

	Map<Long,Time>  listUserTimes(long userId, boolean showClosed);

	Time load(long timeId);

	Time save(Time track) throws UmbrellaException;

	void updateStates(Collection<Long> timeIds, Time.State timeState);
}
