mod account;
mod calendar;
mod customer;
mod email;
mod invoice;
mod jobs;
mod location;
mod messaging;
mod notification;
mod profile;
pub mod project;
mod project_scope_template;
mod report;
mod service;
mod service_scope_template;
mod session;
mod wave;

use async_graphql::MergedObject;

pub use account::AccountMutation;
pub use calendar::CalendarMutation;
pub use customer::CustomerMutation;
pub use email::EmailMutation;
pub use invoice::InvoiceMutation;
pub use jobs::JobMutation;
pub use location::LocationMutation;
pub use messaging::MessagingMutation;
pub use notification::NotificationMutation;
pub use profile::ProfileMutation;
pub use project::ProjectMutation;
pub use project_scope_template::ProjectScopeTemplateMutation;
pub use report::ReportMutation;
pub use service::ServiceMutation;
pub use service_scope_template::ServiceScopeTemplateMutation;
pub use session::SessionMutation;
pub use wave::WaveMutation;

#[derive(MergedObject, Default)]
pub struct MutationRoot(
    AccountMutation,
    CalendarMutation,
    CustomerMutation,
    EmailMutation,
    InvoiceMutation,
    JobMutation,
    LocationMutation,
    MessagingMutation,
    NotificationMutation,
    ProfileMutation,
    ProjectMutation,
    ReportMutation,
    ServiceMutation,
    ServiceScopeTemplateMutation,
    ProjectScopeTemplateMutation,
    SessionMutation,
    WaveMutation,
);
