package gov.nysenate.openleg.dao.entity.committee.search; import gov.nysenate.openleg.dao.base.LimitOffset; import gov.nysenate.openleg.model.entity.CommitteeSessionId; import gov.nysenate.openleg.model.entity.CommitteeVersionId; import gov.nysenate.openleg.model.search.SearchResults; import org.elasticsearch.index.query.QueryBuilder; import org.elasticsearch.search.sort.SortBuilder; import java.util.Collection; import java.util.List; public interface CommitteeSearchDao { public SearchResults<CommitteeVersionId> searchCommittees(QueryBuilder query, QueryBuilder filter, List<SortBuilder> sort, LimitOffset limitOffset); public void updateCommitteeIndex(CommitteeSessionId committeeSessionId); public void updateCommitteeIndexBulk(Collection<CommitteeSessionId> sessionIds); public void deleteCommitteeFromIndex(CommitteeSessionId committeeSessionId); }