6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen#ifndef IMAPC_SEARCH_H
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen#define IMAPC_SEARCH_H
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainenstruct mail_search_context *
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainenimapc_search_init(struct mailbox_transaction_context *t,
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen struct mail_search_args *args,
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen const enum mail_sort_type *sort_program,
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen enum mail_fetch_field wanted_fields,
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen struct mailbox_header_lookup_ctx *wanted_headers);
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainenbool imapc_search_next_update_seq(struct mail_search_context *ctx);
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainenint imapc_search_deinit(struct mail_search_context *ctx);
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen
a9ba935a40c04a86ff20973c52af9ff43831b871Timo Sirainenvoid imapc_search_reply_search(const struct imap_arg *args,
a9ba935a40c04a86ff20973c52af9ff43831b871Timo Sirainen struct imapc_mailbox *mbox);
a9ba935a40c04a86ff20973c52af9ff43831b871Timo Sirainenvoid imapc_search_reply_esearch(const struct imap_arg *args,
a9ba935a40c04a86ff20973c52af9ff43831b871Timo Sirainen struct imapc_mailbox *mbox);
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen
6e1cac3defe84a222b804f3ef41ff558e1a86391Timo Sirainen#endif