pub async fn get_messages( state: &State, id: String, chat_type: ChatType, limit: usize, offset: usize, key: Option<Vec<u8>>, ) -> Result<Vec<Message>>