import { queryParams, type RouteQueryOptions, type RouteDefinition, type RouteFormDefinition } from './../../../wayfinder'
import general5d934c from './general'
import email85aaee from './email'
import emailTemplates7a91b2 from './email-templates'
import emailLayouts5daf82 from './email-layouts'
import notifications1ce82a from './notifications'
/**
* @see \App\Http\Controllers\Admin\Settings\GeneralSettingsController::general
* @see app/Http/Controllers/Admin/Settings/GeneralSettingsController.php:18
* @route '/admin/settings/general'
*/
export const general = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: general.url(options),
    method: 'get',
})

general.definition = {
    methods: ["get","head"],
    url: '/admin/settings/general',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \App\Http\Controllers\Admin\Settings\GeneralSettingsController::general
* @see app/Http/Controllers/Admin/Settings/GeneralSettingsController.php:18
* @route '/admin/settings/general'
*/
general.url = (options?: RouteQueryOptions) => {
    return general.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Admin\Settings\GeneralSettingsController::general
* @see app/Http/Controllers/Admin/Settings/GeneralSettingsController.php:18
* @route '/admin/settings/general'
*/
general.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: general.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\GeneralSettingsController::general
* @see app/Http/Controllers/Admin/Settings/GeneralSettingsController.php:18
* @route '/admin/settings/general'
*/
general.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: general.url(options),
    method: 'head',
})

/**
* @see \App\Http\Controllers\Admin\Settings\GeneralSettingsController::general
* @see app/Http/Controllers/Admin/Settings/GeneralSettingsController.php:18
* @route '/admin/settings/general'
*/
const generalForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: general.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\GeneralSettingsController::general
* @see app/Http/Controllers/Admin/Settings/GeneralSettingsController.php:18
* @route '/admin/settings/general'
*/
generalForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: general.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\GeneralSettingsController::general
* @see app/Http/Controllers/Admin/Settings/GeneralSettingsController.php:18
* @route '/admin/settings/general'
*/
generalForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: general.url({
        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
            _method: 'HEAD',
            ...(options?.query ?? options?.mergeQuery ?? {}),
        }
    }),
    method: 'get',
})

general.form = generalForm

/**
* @see \App\Http\Controllers\Admin\Settings\EmailSettingsController::email
* @see app/Http/Controllers/Admin/Settings/EmailSettingsController.php:18
* @route '/admin/settings/email'
*/
export const email = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: email.url(options),
    method: 'get',
})

email.definition = {
    methods: ["get","head"],
    url: '/admin/settings/email',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \App\Http\Controllers\Admin\Settings\EmailSettingsController::email
* @see app/Http/Controllers/Admin/Settings/EmailSettingsController.php:18
* @route '/admin/settings/email'
*/
email.url = (options?: RouteQueryOptions) => {
    return email.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Admin\Settings\EmailSettingsController::email
* @see app/Http/Controllers/Admin/Settings/EmailSettingsController.php:18
* @route '/admin/settings/email'
*/
email.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: email.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailSettingsController::email
* @see app/Http/Controllers/Admin/Settings/EmailSettingsController.php:18
* @route '/admin/settings/email'
*/
email.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: email.url(options),
    method: 'head',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailSettingsController::email
* @see app/Http/Controllers/Admin/Settings/EmailSettingsController.php:18
* @route '/admin/settings/email'
*/
const emailForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: email.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailSettingsController::email
* @see app/Http/Controllers/Admin/Settings/EmailSettingsController.php:18
* @route '/admin/settings/email'
*/
emailForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: email.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailSettingsController::email
* @see app/Http/Controllers/Admin/Settings/EmailSettingsController.php:18
* @route '/admin/settings/email'
*/
emailForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: email.url({
        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
            _method: 'HEAD',
            ...(options?.query ?? options?.mergeQuery ?? {}),
        }
    }),
    method: 'get',
})

email.form = emailForm

/**
* @see \App\Http\Controllers\Admin\Settings\EmailTemplatesController::emailTemplates
* @see app/Http/Controllers/Admin/Settings/EmailTemplatesController.php:17
* @route '/admin/settings/email-templates'
*/
export const emailTemplates = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: emailTemplates.url(options),
    method: 'get',
})

emailTemplates.definition = {
    methods: ["get","head"],
    url: '/admin/settings/email-templates',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \App\Http\Controllers\Admin\Settings\EmailTemplatesController::emailTemplates
* @see app/Http/Controllers/Admin/Settings/EmailTemplatesController.php:17
* @route '/admin/settings/email-templates'
*/
emailTemplates.url = (options?: RouteQueryOptions) => {
    return emailTemplates.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Admin\Settings\EmailTemplatesController::emailTemplates
* @see app/Http/Controllers/Admin/Settings/EmailTemplatesController.php:17
* @route '/admin/settings/email-templates'
*/
emailTemplates.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: emailTemplates.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailTemplatesController::emailTemplates
* @see app/Http/Controllers/Admin/Settings/EmailTemplatesController.php:17
* @route '/admin/settings/email-templates'
*/
emailTemplates.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: emailTemplates.url(options),
    method: 'head',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailTemplatesController::emailTemplates
* @see app/Http/Controllers/Admin/Settings/EmailTemplatesController.php:17
* @route '/admin/settings/email-templates'
*/
const emailTemplatesForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: emailTemplates.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailTemplatesController::emailTemplates
* @see app/Http/Controllers/Admin/Settings/EmailTemplatesController.php:17
* @route '/admin/settings/email-templates'
*/
emailTemplatesForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: emailTemplates.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailTemplatesController::emailTemplates
* @see app/Http/Controllers/Admin/Settings/EmailTemplatesController.php:17
* @route '/admin/settings/email-templates'
*/
emailTemplatesForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: emailTemplates.url({
        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
            _method: 'HEAD',
            ...(options?.query ?? options?.mergeQuery ?? {}),
        }
    }),
    method: 'get',
})

emailTemplates.form = emailTemplatesForm

/**
* @see \App\Http\Controllers\Admin\Settings\EmailLayoutsController::emailLayouts
* @see app/Http/Controllers/Admin/Settings/EmailLayoutsController.php:17
* @route '/admin/settings/email-layouts'
*/
export const emailLayouts = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: emailLayouts.url(options),
    method: 'get',
})

emailLayouts.definition = {
    methods: ["get","head"],
    url: '/admin/settings/email-layouts',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \App\Http\Controllers\Admin\Settings\EmailLayoutsController::emailLayouts
* @see app/Http/Controllers/Admin/Settings/EmailLayoutsController.php:17
* @route '/admin/settings/email-layouts'
*/
emailLayouts.url = (options?: RouteQueryOptions) => {
    return emailLayouts.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Admin\Settings\EmailLayoutsController::emailLayouts
* @see app/Http/Controllers/Admin/Settings/EmailLayoutsController.php:17
* @route '/admin/settings/email-layouts'
*/
emailLayouts.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: emailLayouts.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailLayoutsController::emailLayouts
* @see app/Http/Controllers/Admin/Settings/EmailLayoutsController.php:17
* @route '/admin/settings/email-layouts'
*/
emailLayouts.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: emailLayouts.url(options),
    method: 'head',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailLayoutsController::emailLayouts
* @see app/Http/Controllers/Admin/Settings/EmailLayoutsController.php:17
* @route '/admin/settings/email-layouts'
*/
const emailLayoutsForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: emailLayouts.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailLayoutsController::emailLayouts
* @see app/Http/Controllers/Admin/Settings/EmailLayoutsController.php:17
* @route '/admin/settings/email-layouts'
*/
emailLayoutsForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: emailLayouts.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\EmailLayoutsController::emailLayouts
* @see app/Http/Controllers/Admin/Settings/EmailLayoutsController.php:17
* @route '/admin/settings/email-layouts'
*/
emailLayoutsForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: emailLayouts.url({
        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
            _method: 'HEAD',
            ...(options?.query ?? options?.mergeQuery ?? {}),
        }
    }),
    method: 'get',
})

emailLayouts.form = emailLayoutsForm

/**
* @see \App\Http\Controllers\Admin\Settings\NotificationSettingsController::notifications
* @see app/Http/Controllers/Admin/Settings/NotificationSettingsController.php:16
* @route '/admin/settings/notifications'
*/
export const notifications = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: notifications.url(options),
    method: 'get',
})

notifications.definition = {
    methods: ["get","head"],
    url: '/admin/settings/notifications',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \App\Http\Controllers\Admin\Settings\NotificationSettingsController::notifications
* @see app/Http/Controllers/Admin/Settings/NotificationSettingsController.php:16
* @route '/admin/settings/notifications'
*/
notifications.url = (options?: RouteQueryOptions) => {
    return notifications.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Admin\Settings\NotificationSettingsController::notifications
* @see app/Http/Controllers/Admin/Settings/NotificationSettingsController.php:16
* @route '/admin/settings/notifications'
*/
notifications.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: notifications.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\NotificationSettingsController::notifications
* @see app/Http/Controllers/Admin/Settings/NotificationSettingsController.php:16
* @route '/admin/settings/notifications'
*/
notifications.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: notifications.url(options),
    method: 'head',
})

/**
* @see \App\Http\Controllers\Admin\Settings\NotificationSettingsController::notifications
* @see app/Http/Controllers/Admin/Settings/NotificationSettingsController.php:16
* @route '/admin/settings/notifications'
*/
const notificationsForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: notifications.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\NotificationSettingsController::notifications
* @see app/Http/Controllers/Admin/Settings/NotificationSettingsController.php:16
* @route '/admin/settings/notifications'
*/
notificationsForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: notifications.url(options),
    method: 'get',
})

/**
* @see \App\Http\Controllers\Admin\Settings\NotificationSettingsController::notifications
* @see app/Http/Controllers/Admin/Settings/NotificationSettingsController.php:16
* @route '/admin/settings/notifications'
*/
notificationsForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
    action: notifications.url({
        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
            _method: 'HEAD',
            ...(options?.query ?? options?.mergeQuery ?? {}),
        }
    }),
    method: 'get',
})

notifications.form = notificationsForm

const settings = {
    general: Object.assign(general, general5d934c),
    email: Object.assign(email, email85aaee),
    emailTemplates: Object.assign(emailTemplates, emailTemplates7a91b2),
    emailLayouts: Object.assign(emailLayouts, emailLayouts5daf82),
    notifications: Object.assign(notifications, notifications1ce82a),
}

export default settings