def end_at(self, document_fields: dict) -> Query: query = Query(self, end_at=(document_fields, True)) return query
def end_before(self, document_fields: dict) -> Query: query = Query(self, end_at=(document_fields, False)) return query
def offset(self, offset: int) -> Query: query = Query(self, offset=offset) return query
def start_after(self, document_fields: dict) -> Query: query = Query(self, start_at=(document_fields, False)) return query
def limit(self, limit_amount: int) -> Query: query = Query(self, limit=limit_amount) return query
def order_by(self, key: str, direction: Optional[str] = None) -> Query: query = Query(self, orders=[(key, direction)]) return query
def where(self, field: str, op: str, value: Any) -> Query: query = Query(self, field_filters=[(field, op, value)]) return query
def end_before( self, document_fields_or_snapshot: Union[dict, DocumentSnapshot]) -> Query: query = Query(self, end_at=(document_fields_or_snapshot, False)) return query
def start_after( self, document_fields_or_snapshot: Union[dict, DocumentSnapshot]) -> Query: query = Query(self, start_at=(document_fields_or_snapshot, False)) return query