#ifndef IMAP_COMMANDS_UTIL_H
#define IMAP_COMMANDS_UTIL_H
struct msgset_generator_context {
};
struct mail_full_flags;
struct mailbox_keywords;
/* Finds namespace for given mailbox from namespaces. If namespace isn't found
or mailbox name is invalid, sends a tagged NO reply to client. */
struct mail_namespace *
struct mail_namespace *
/* Returns TRUE if mailbox is selected. If not, sends "No mailbox selected"
error message to client. */
/* Close the selected mailbox. */
/* Returns string based in IMAP command name and parameters. */
/* Set transaction's reason to the IMAP command name and parameters. */
struct client_command_context *cmd);
const char *
/* Send last mailbox list error message to client. */
struct mailbox_list *list);
/* Send last mail storage error message to client. */
struct mail_storage *storage);
/* Send last mailbox's storage error message to client. */
/* Send untagged error message to client. */
struct mail_storage *storage);
/* Parse flags. Returns TRUE if successful, if not sends an error message to
client. */
enum mail_flags *flags_r,
const char *const **keywords_r);
/* Send FLAGS + PERMANENTFLAGS to client if they have changed,
or if selecting=TRUE. */
/* Update client->keywords array. Use keywords=NULL when unselecting. */
ATTR_NULL(2);
/* Convert keyword indexes to keyword names in selected mailbox. */
const char *const *
#endif