mod attachments;
pub(crate) use attachments::AttachmentReadFailure;
pub(crate) mod conflicts;
mod dependencies;
mod epics;
mod labels;
mod projects;
pub(crate) mod recurrence;
mod related;
mod tasks;
#[cfg(feature = "test-support")]
pub use attachments::attachment_read_items_by_task;
pub use attachments::{
AttachmentAddInput, AttachmentAddOutcome, AttachmentOutcome, AttachmentReadItem,
PreparedAttachment, TaskAttachmentAddInput,
};
pub use conflicts::{ConflictDetail, ConflictListItem, ConflictOutcome, ConflictResolutionOutcome};
pub(crate) use conflicts::{
ConflictResolutionValue, ExpectedConflictIdentity, resolve_conflict_transaction,
};
pub use dependencies::DependencyOutcome;
#[cfg(any(test, feature = "test-support"))]
pub(crate) use dependencies::add_task_dependency;
pub(crate) use dependencies::dependency_path_exists;
pub use epics::EpicLinkOutcome;
#[cfg(any(test, feature = "test-support"))]
pub(crate) use epics::add_task_to_epic;
pub(crate) use epics::{
add_task_to_epic_in_transaction, remove_task_from_epic_in_transaction,
restore_task_to_epic_in_transaction, task_has_epic_children,
};
pub(crate) use labels::create_label_operation;
pub(crate) use labels::set_label_name;
pub use labels::{LabelDeleteOutcome, LabelOutcome, LabelRenameOutcome};
pub use projects::{ProjectDeleteOutcome, ProjectMetadata, ProjectOutcome, ProjectRenameOutcome};
pub(crate) use projects::{insert_project_metadata_change, set_project_metadata};
pub use recurrence::{
CreateRecurrenceSeriesParams, RecurrenceCreateOutcome, RecurrenceReconcileOutcome,
RecurrenceResolveOutcome, RecurrenceSeriesDraft, RecurrenceStateOutcome,
RecurrenceTemplateUpdate, RecurrenceTemplateUpdateOutcome, UpdateRecurrenceTemplateParams,
};
pub(crate) use recurrence::{
RecurrenceMutationOutcome, RecurrenceStructuralMutation, RecurrenceTaskMutation,
route_recurrence_task_mutation, undo_recurrence_resolution,
};
pub use related::RelatedOutcome;
pub(crate) use related::{
canonical_related_pair, set_task_related_link_in_transaction, task_has_related_state,
};
pub(crate) use tasks::ConsumerTaskMutation;
pub(crate) use tasks::update_task_labels_in_workspace;
pub use tasks::{
NoteDeleteOutcome, NoteEditOutcome, NoteOutcome, TaskCreationOptions, TaskCreationUndo,
TaskDraft, TaskLabelSelection, TaskMutationOutcome, TaskMutationReport, TaskOutcome,
TaskUpdate, TaskUpdateOutcome,
};
#[cfg(any(test, feature = "test-support"))]
pub(crate) use tasks::{create_task, update_task};