import { queryParams, type RouteQueryOptions, type RouteDefinition, type RouteFormDefinition } from './../../../../wayfinder'
/**
* @see \App\Http\Controllers\SiteInfoController::editContact
 * @see app/Http/Controllers/SiteInfoController.php:12
 * @route '/dashboard/site-info/contact'
 */
export const editContact = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: editContact.url(options),
    method: 'get',
})

editContact.definition = {
    methods: ["get","head"],
    url: '/dashboard/site-info/contact',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \App\Http\Controllers\SiteInfoController::editContact
 * @see app/Http/Controllers/SiteInfoController.php:12
 * @route '/dashboard/site-info/contact'
 */
editContact.url = (options?: RouteQueryOptions) => {
    return editContact.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\SiteInfoController::editContact
 * @see app/Http/Controllers/SiteInfoController.php:12
 * @route '/dashboard/site-info/contact'
 */
editContact.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: editContact.url(options),
    method: 'get',
})
/**
* @see \App\Http\Controllers\SiteInfoController::editContact
 * @see app/Http/Controllers/SiteInfoController.php:12
 * @route '/dashboard/site-info/contact'
 */
editContact.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: editContact.url(options),
    method: 'head',
})

    /**
* @see \App\Http\Controllers\SiteInfoController::editContact
 * @see app/Http/Controllers/SiteInfoController.php:12
 * @route '/dashboard/site-info/contact'
 */
    const editContactForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
        action: editContact.url(options),
        method: 'get',
    })

            /**
* @see \App\Http\Controllers\SiteInfoController::editContact
 * @see app/Http/Controllers/SiteInfoController.php:12
 * @route '/dashboard/site-info/contact'
 */
        editContactForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: editContact.url(options),
            method: 'get',
        })
            /**
* @see \App\Http\Controllers\SiteInfoController::editContact
 * @see app/Http/Controllers/SiteInfoController.php:12
 * @route '/dashboard/site-info/contact'
 */
        editContactForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: editContact.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'HEAD',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'get',
        })
    
    editContact.form = editContactForm
/**
* @see \App\Http\Controllers\SiteInfoController::updateContact
 * @see app/Http/Controllers/SiteInfoController.php:30
 * @route '/dashboard/site-info/contact'
 */
export const updateContact = (options?: RouteQueryOptions): RouteDefinition<'put'> => ({
    url: updateContact.url(options),
    method: 'put',
})

updateContact.definition = {
    methods: ["put"],
    url: '/dashboard/site-info/contact',
} satisfies RouteDefinition<["put"]>

/**
* @see \App\Http\Controllers\SiteInfoController::updateContact
 * @see app/Http/Controllers/SiteInfoController.php:30
 * @route '/dashboard/site-info/contact'
 */
updateContact.url = (options?: RouteQueryOptions) => {
    return updateContact.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\SiteInfoController::updateContact
 * @see app/Http/Controllers/SiteInfoController.php:30
 * @route '/dashboard/site-info/contact'
 */
updateContact.put = (options?: RouteQueryOptions): RouteDefinition<'put'> => ({
    url: updateContact.url(options),
    method: 'put',
})

    /**
* @see \App\Http\Controllers\SiteInfoController::updateContact
 * @see app/Http/Controllers/SiteInfoController.php:30
 * @route '/dashboard/site-info/contact'
 */
    const updateContactForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
        action: updateContact.url({
                    [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                        _method: 'PUT',
                        ...(options?.query ?? options?.mergeQuery ?? {}),
                    }
                }),
        method: 'post',
    })

            /**
* @see \App\Http\Controllers\SiteInfoController::updateContact
 * @see app/Http/Controllers/SiteInfoController.php:30
 * @route '/dashboard/site-info/contact'
 */
        updateContactForm.put = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
            action: updateContact.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'PUT',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'post',
        })
    
    updateContact.form = updateContactForm
/**
* @see \App\Http\Controllers\SiteInfoController::editSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:50
 * @route '/dashboard/site-info/social-links'
 */
export const editSocialLinks = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: editSocialLinks.url(options),
    method: 'get',
})

editSocialLinks.definition = {
    methods: ["get","head"],
    url: '/dashboard/site-info/social-links',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \App\Http\Controllers\SiteInfoController::editSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:50
 * @route '/dashboard/site-info/social-links'
 */
editSocialLinks.url = (options?: RouteQueryOptions) => {
    return editSocialLinks.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\SiteInfoController::editSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:50
 * @route '/dashboard/site-info/social-links'
 */
editSocialLinks.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: editSocialLinks.url(options),
    method: 'get',
})
/**
* @see \App\Http\Controllers\SiteInfoController::editSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:50
 * @route '/dashboard/site-info/social-links'
 */
editSocialLinks.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: editSocialLinks.url(options),
    method: 'head',
})

    /**
* @see \App\Http\Controllers\SiteInfoController::editSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:50
 * @route '/dashboard/site-info/social-links'
 */
    const editSocialLinksForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
        action: editSocialLinks.url(options),
        method: 'get',
    })

            /**
* @see \App\Http\Controllers\SiteInfoController::editSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:50
 * @route '/dashboard/site-info/social-links'
 */
        editSocialLinksForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: editSocialLinks.url(options),
            method: 'get',
        })
            /**
* @see \App\Http\Controllers\SiteInfoController::editSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:50
 * @route '/dashboard/site-info/social-links'
 */
        editSocialLinksForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: editSocialLinks.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'HEAD',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'get',
        })
    
    editSocialLinks.form = editSocialLinksForm
/**
* @see \App\Http\Controllers\SiteInfoController::updateSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:62
 * @route '/dashboard/site-info/social-links'
 */
export const updateSocialLinks = (options?: RouteQueryOptions): RouteDefinition<'put'> => ({
    url: updateSocialLinks.url(options),
    method: 'put',
})

updateSocialLinks.definition = {
    methods: ["put"],
    url: '/dashboard/site-info/social-links',
} satisfies RouteDefinition<["put"]>

/**
* @see \App\Http\Controllers\SiteInfoController::updateSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:62
 * @route '/dashboard/site-info/social-links'
 */
updateSocialLinks.url = (options?: RouteQueryOptions) => {
    return updateSocialLinks.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\SiteInfoController::updateSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:62
 * @route '/dashboard/site-info/social-links'
 */
updateSocialLinks.put = (options?: RouteQueryOptions): RouteDefinition<'put'> => ({
    url: updateSocialLinks.url(options),
    method: 'put',
})

    /**
* @see \App\Http\Controllers\SiteInfoController::updateSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:62
 * @route '/dashboard/site-info/social-links'
 */
    const updateSocialLinksForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
        action: updateSocialLinks.url({
                    [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                        _method: 'PUT',
                        ...(options?.query ?? options?.mergeQuery ?? {}),
                    }
                }),
        method: 'post',
    })

            /**
* @see \App\Http\Controllers\SiteInfoController::updateSocialLinks
 * @see app/Http/Controllers/SiteInfoController.php:62
 * @route '/dashboard/site-info/social-links'
 */
        updateSocialLinksForm.put = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
            action: updateSocialLinks.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'PUT',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'post',
        })
    
    updateSocialLinks.form = updateSocialLinksForm
const SiteInfoController = { editContact, updateContact, editSocialLinks, updateSocialLinks }

export default SiteInfoController