import { queryParams, type RouteQueryOptions, type RouteDefinition, type RouteFormDefinition, applyUrlDefaults } from './../../../../../wayfinder'
/**
* @see \App\Http\Controllers\Client\BookingController::summary
 * @see app/Http/Controllers/Client/BookingController.php:73
 * @route '/summary'
 */
export const summary = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: summary.url(options),
    method: 'get',
})

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

/**
* @see \App\Http\Controllers\Client\BookingController::summary
 * @see app/Http/Controllers/Client/BookingController.php:73
 * @route '/summary'
 */
summary.url = (options?: RouteQueryOptions) => {
    return summary.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::summary
 * @see app/Http/Controllers/Client/BookingController.php:73
 * @route '/summary'
 */
summary.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: summary.url(options),
    method: 'get',
})
/**
* @see \App\Http\Controllers\Client\BookingController::summary
 * @see app/Http/Controllers/Client/BookingController.php:73
 * @route '/summary'
 */
summary.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: summary.url(options),
    method: 'head',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::summary
 * @see app/Http/Controllers/Client/BookingController.php:73
 * @route '/summary'
 */
    const summaryForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
        action: summary.url(options),
        method: 'get',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::summary
 * @see app/Http/Controllers/Client/BookingController.php:73
 * @route '/summary'
 */
        summaryForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: summary.url(options),
            method: 'get',
        })
            /**
* @see \App\Http\Controllers\Client\BookingController::summary
 * @see app/Http/Controllers/Client/BookingController.php:73
 * @route '/summary'
 */
        summaryForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: summary.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'HEAD',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'get',
        })
    
    summary.form = summaryForm
/**
* @see \App\Http\Controllers\Client\BookingController::checkout
 * @see app/Http/Controllers/Client/BookingController.php:143
 * @route '/checkout'
 */
export const checkout = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: checkout.url(options),
    method: 'get',
})

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

/**
* @see \App\Http\Controllers\Client\BookingController::checkout
 * @see app/Http/Controllers/Client/BookingController.php:143
 * @route '/checkout'
 */
checkout.url = (options?: RouteQueryOptions) => {
    return checkout.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::checkout
 * @see app/Http/Controllers/Client/BookingController.php:143
 * @route '/checkout'
 */
checkout.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: checkout.url(options),
    method: 'get',
})
/**
* @see \App\Http\Controllers\Client\BookingController::checkout
 * @see app/Http/Controllers/Client/BookingController.php:143
 * @route '/checkout'
 */
checkout.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: checkout.url(options),
    method: 'head',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::checkout
 * @see app/Http/Controllers/Client/BookingController.php:143
 * @route '/checkout'
 */
    const checkoutForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
        action: checkout.url(options),
        method: 'get',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::checkout
 * @see app/Http/Controllers/Client/BookingController.php:143
 * @route '/checkout'
 */
        checkoutForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: checkout.url(options),
            method: 'get',
        })
            /**
* @see \App\Http\Controllers\Client\BookingController::checkout
 * @see app/Http/Controllers/Client/BookingController.php:143
 * @route '/checkout'
 */
        checkoutForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: checkout.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'HEAD',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'get',
        })
    
    checkout.form = checkoutForm
/**
* @see \App\Http\Controllers\Client\BookingController::success
 * @see app/Http/Controllers/Client/BookingController.php:359
 * @route '/booking/success'
 */
export const success = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: success.url(options),
    method: 'get',
})

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

/**
* @see \App\Http\Controllers\Client\BookingController::success
 * @see app/Http/Controllers/Client/BookingController.php:359
 * @route '/booking/success'
 */
success.url = (options?: RouteQueryOptions) => {
    return success.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::success
 * @see app/Http/Controllers/Client/BookingController.php:359
 * @route '/booking/success'
 */
success.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: success.url(options),
    method: 'get',
})
/**
* @see \App\Http\Controllers\Client\BookingController::success
 * @see app/Http/Controllers/Client/BookingController.php:359
 * @route '/booking/success'
 */
success.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: success.url(options),
    method: 'head',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::success
 * @see app/Http/Controllers/Client/BookingController.php:359
 * @route '/booking/success'
 */
    const successForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
        action: success.url(options),
        method: 'get',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::success
 * @see app/Http/Controllers/Client/BookingController.php:359
 * @route '/booking/success'
 */
        successForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: success.url(options),
            method: 'get',
        })
            /**
* @see \App\Http\Controllers\Client\BookingController::success
 * @see app/Http/Controllers/Client/BookingController.php:359
 * @route '/booking/success'
 */
        successForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: success.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'HEAD',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'get',
        })
    
    success.form = successForm
/**
* @see \App\Http\Controllers\Client\BookingController::view
 * @see app/Http/Controllers/Client/BookingController.php:378
 * @route '/booking/view'
 */
export const view = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: view.url(options),
    method: 'get',
})

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

/**
* @see \App\Http\Controllers\Client\BookingController::view
 * @see app/Http/Controllers/Client/BookingController.php:378
 * @route '/booking/view'
 */
view.url = (options?: RouteQueryOptions) => {
    return view.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::view
 * @see app/Http/Controllers/Client/BookingController.php:378
 * @route '/booking/view'
 */
view.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: view.url(options),
    method: 'get',
})
/**
* @see \App\Http\Controllers\Client\BookingController::view
 * @see app/Http/Controllers/Client/BookingController.php:378
 * @route '/booking/view'
 */
view.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: view.url(options),
    method: 'head',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::view
 * @see app/Http/Controllers/Client/BookingController.php:378
 * @route '/booking/view'
 */
    const viewForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
        action: view.url(options),
        method: 'get',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::view
 * @see app/Http/Controllers/Client/BookingController.php:378
 * @route '/booking/view'
 */
        viewForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: view.url(options),
            method: 'get',
        })
            /**
* @see \App\Http\Controllers\Client\BookingController::view
 * @see app/Http/Controllers/Client/BookingController.php:378
 * @route '/booking/view'
 */
        viewForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: view.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'HEAD',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'get',
        })
    
    view.form = viewForm
/**
* @see \App\Http\Controllers\Client\BookingController::addRoom
 * @see app/Http/Controllers/Client/BookingController.php:24
 * @route '/booking/add-room'
 */
export const addRoom = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: addRoom.url(options),
    method: 'post',
})

addRoom.definition = {
    methods: ["post"],
    url: '/booking/add-room',
} satisfies RouteDefinition<["post"]>

/**
* @see \App\Http\Controllers\Client\BookingController::addRoom
 * @see app/Http/Controllers/Client/BookingController.php:24
 * @route '/booking/add-room'
 */
addRoom.url = (options?: RouteQueryOptions) => {
    return addRoom.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::addRoom
 * @see app/Http/Controllers/Client/BookingController.php:24
 * @route '/booking/add-room'
 */
addRoom.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: addRoom.url(options),
    method: 'post',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::addRoom
 * @see app/Http/Controllers/Client/BookingController.php:24
 * @route '/booking/add-room'
 */
    const addRoomForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
        action: addRoom.url(options),
        method: 'post',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::addRoom
 * @see app/Http/Controllers/Client/BookingController.php:24
 * @route '/booking/add-room'
 */
        addRoomForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
            action: addRoom.url(options),
            method: 'post',
        })
    
    addRoom.form = addRoomForm
/**
* @see \App\Http\Controllers\Client\BookingController::removeRoom
 * @see app/Http/Controllers/Client/BookingController.php:56
 * @route '/booking/remove-room'
 */
export const removeRoom = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: removeRoom.url(options),
    method: 'post',
})

removeRoom.definition = {
    methods: ["post"],
    url: '/booking/remove-room',
} satisfies RouteDefinition<["post"]>

/**
* @see \App\Http\Controllers\Client\BookingController::removeRoom
 * @see app/Http/Controllers/Client/BookingController.php:56
 * @route '/booking/remove-room'
 */
removeRoom.url = (options?: RouteQueryOptions) => {
    return removeRoom.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::removeRoom
 * @see app/Http/Controllers/Client/BookingController.php:56
 * @route '/booking/remove-room'
 */
removeRoom.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: removeRoom.url(options),
    method: 'post',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::removeRoom
 * @see app/Http/Controllers/Client/BookingController.php:56
 * @route '/booking/remove-room'
 */
    const removeRoomForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
        action: removeRoom.url(options),
        method: 'post',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::removeRoom
 * @see app/Http/Controllers/Client/BookingController.php:56
 * @route '/booking/remove-room'
 */
        removeRoomForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
            action: removeRoom.url(options),
            method: 'post',
        })
    
    removeRoom.form = removeRoomForm
/**
* @see \App\Http\Controllers\Client\BookingController::saveSummary
 * @see app/Http/Controllers/Client/BookingController.php:101
 * @route '/booking/save-summary'
 */
export const saveSummary = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: saveSummary.url(options),
    method: 'post',
})

saveSummary.definition = {
    methods: ["post"],
    url: '/booking/save-summary',
} satisfies RouteDefinition<["post"]>

/**
* @see \App\Http\Controllers\Client\BookingController::saveSummary
 * @see app/Http/Controllers/Client/BookingController.php:101
 * @route '/booking/save-summary'
 */
saveSummary.url = (options?: RouteQueryOptions) => {
    return saveSummary.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::saveSummary
 * @see app/Http/Controllers/Client/BookingController.php:101
 * @route '/booking/save-summary'
 */
saveSummary.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: saveSummary.url(options),
    method: 'post',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::saveSummary
 * @see app/Http/Controllers/Client/BookingController.php:101
 * @route '/booking/save-summary'
 */
    const saveSummaryForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
        action: saveSummary.url(options),
        method: 'post',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::saveSummary
 * @see app/Http/Controllers/Client/BookingController.php:101
 * @route '/booking/save-summary'
 */
        saveSummaryForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
            action: saveSummary.url(options),
            method: 'post',
        })
    
    saveSummary.form = saveSummaryForm
/**
* @see \App\Http\Controllers\Client\BookingController::saveSummeryAndRoomDetails
 * @see app/Http/Controllers/Client/BookingController.php:122
 * @route '/booking/save-summary/{slug}/{room_number}'
 */
export const saveSummeryAndRoomDetails = (args: { slug: string | number, room_number: string | number } | [slug: string | number, room_number: string | number ], options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: saveSummeryAndRoomDetails.url(args, options),
    method: 'post',
})

saveSummeryAndRoomDetails.definition = {
    methods: ["post"],
    url: '/booking/save-summary/{slug}/{room_number}',
} satisfies RouteDefinition<["post"]>

/**
* @see \App\Http\Controllers\Client\BookingController::saveSummeryAndRoomDetails
 * @see app/Http/Controllers/Client/BookingController.php:122
 * @route '/booking/save-summary/{slug}/{room_number}'
 */
saveSummeryAndRoomDetails.url = (args: { slug: string | number, room_number: string | number } | [slug: string | number, room_number: string | number ], options?: RouteQueryOptions) => {
    if (Array.isArray(args)) {
        args = {
                    slug: args[0],
                    room_number: args[1],
                }
    }

    args = applyUrlDefaults(args)

    const parsedArgs = {
                        slug: args.slug,
                                room_number: args.room_number,
                }

    return saveSummeryAndRoomDetails.definition.url
            .replace('{slug}', parsedArgs.slug.toString())
            .replace('{room_number}', parsedArgs.room_number.toString())
            .replace(/\/+$/, '') + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::saveSummeryAndRoomDetails
 * @see app/Http/Controllers/Client/BookingController.php:122
 * @route '/booking/save-summary/{slug}/{room_number}'
 */
saveSummeryAndRoomDetails.post = (args: { slug: string | number, room_number: string | number } | [slug: string | number, room_number: string | number ], options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: saveSummeryAndRoomDetails.url(args, options),
    method: 'post',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::saveSummeryAndRoomDetails
 * @see app/Http/Controllers/Client/BookingController.php:122
 * @route '/booking/save-summary/{slug}/{room_number}'
 */
    const saveSummeryAndRoomDetailsForm = (args: { slug: string | number, room_number: string | number } | [slug: string | number, room_number: string | number ], options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
        action: saveSummeryAndRoomDetails.url(args, options),
        method: 'post',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::saveSummeryAndRoomDetails
 * @see app/Http/Controllers/Client/BookingController.php:122
 * @route '/booking/save-summary/{slug}/{room_number}'
 */
        saveSummeryAndRoomDetailsForm.post = (args: { slug: string | number, room_number: string | number } | [slug: string | number, room_number: string | number ], options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
            action: saveSummeryAndRoomDetails.url(args, options),
            method: 'post',
        })
    
    saveSummeryAndRoomDetails.form = saveSummeryAndRoomDetailsForm
/**
* @see \App\Http\Controllers\Client\BookingController::updateCheckout
 * @see app/Http/Controllers/Client/BookingController.php:157
 * @route '/booking/update-checkout'
 */
export const updateCheckout = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: updateCheckout.url(options),
    method: 'post',
})

updateCheckout.definition = {
    methods: ["post"],
    url: '/booking/update-checkout',
} satisfies RouteDefinition<["post"]>

/**
* @see \App\Http\Controllers\Client\BookingController::updateCheckout
 * @see app/Http/Controllers/Client/BookingController.php:157
 * @route '/booking/update-checkout'
 */
updateCheckout.url = (options?: RouteQueryOptions) => {
    return updateCheckout.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::updateCheckout
 * @see app/Http/Controllers/Client/BookingController.php:157
 * @route '/booking/update-checkout'
 */
updateCheckout.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: updateCheckout.url(options),
    method: 'post',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::updateCheckout
 * @see app/Http/Controllers/Client/BookingController.php:157
 * @route '/booking/update-checkout'
 */
    const updateCheckoutForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
        action: updateCheckout.url(options),
        method: 'post',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::updateCheckout
 * @see app/Http/Controllers/Client/BookingController.php:157
 * @route '/booking/update-checkout'
 */
        updateCheckoutForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
            action: updateCheckout.url(options),
            method: 'post',
        })
    
    updateCheckout.form = updateCheckoutForm
/**
* @see \App\Http\Controllers\Client\BookingController::store
 * @see app/Http/Controllers/Client/BookingController.php:207
 * @route '/booking/store'
 */
export const store = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: store.url(options),
    method: 'post',
})

store.definition = {
    methods: ["post"],
    url: '/booking/store',
} satisfies RouteDefinition<["post"]>

/**
* @see \App\Http\Controllers\Client\BookingController::store
 * @see app/Http/Controllers/Client/BookingController.php:207
 * @route '/booking/store'
 */
store.url = (options?: RouteQueryOptions) => {
    return store.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::store
 * @see app/Http/Controllers/Client/BookingController.php:207
 * @route '/booking/store'
 */
store.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: store.url(options),
    method: 'post',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::store
 * @see app/Http/Controllers/Client/BookingController.php:207
 * @route '/booking/store'
 */
    const storeForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
        action: store.url(options),
        method: 'post',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::store
 * @see app/Http/Controllers/Client/BookingController.php:207
 * @route '/booking/store'
 */
        storeForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
            action: store.url(options),
            method: 'post',
        })
    
    store.form = storeForm
/**
* @see \App\Http\Controllers\Client\BookingController::clear
 * @see app/Http/Controllers/Client/BookingController.php:67
 * @route '/booking/clear'
 */
export const clear = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: clear.url(options),
    method: 'get',
})

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

/**
* @see \App\Http\Controllers\Client\BookingController::clear
 * @see app/Http/Controllers/Client/BookingController.php:67
 * @route '/booking/clear'
 */
clear.url = (options?: RouteQueryOptions) => {
    return clear.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::clear
 * @see app/Http/Controllers/Client/BookingController.php:67
 * @route '/booking/clear'
 */
clear.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: clear.url(options),
    method: 'get',
})
/**
* @see \App\Http\Controllers\Client\BookingController::clear
 * @see app/Http/Controllers/Client/BookingController.php:67
 * @route '/booking/clear'
 */
clear.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: clear.url(options),
    method: 'head',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::clear
 * @see app/Http/Controllers/Client/BookingController.php:67
 * @route '/booking/clear'
 */
    const clearForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
        action: clear.url(options),
        method: 'get',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::clear
 * @see app/Http/Controllers/Client/BookingController.php:67
 * @route '/booking/clear'
 */
        clearForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: clear.url(options),
            method: 'get',
        })
            /**
* @see \App\Http\Controllers\Client\BookingController::clear
 * @see app/Http/Controllers/Client/BookingController.php:67
 * @route '/booking/clear'
 */
        clearForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: clear.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'HEAD',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'get',
        })
    
    clear.form = clearForm
/**
* @see \App\Http\Controllers\Client\BookingController::test
 * @see app/Http/Controllers/Client/BookingController.php:350
 * @route '/booking/test'
 */
export const test = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: test.url(options),
    method: 'get',
})

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

/**
* @see \App\Http\Controllers\Client\BookingController::test
 * @see app/Http/Controllers/Client/BookingController.php:350
 * @route '/booking/test'
 */
test.url = (options?: RouteQueryOptions) => {
    return test.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\Client\BookingController::test
 * @see app/Http/Controllers/Client/BookingController.php:350
 * @route '/booking/test'
 */
test.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: test.url(options),
    method: 'get',
})
/**
* @see \App\Http\Controllers\Client\BookingController::test
 * @see app/Http/Controllers/Client/BookingController.php:350
 * @route '/booking/test'
 */
test.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: test.url(options),
    method: 'head',
})

    /**
* @see \App\Http\Controllers\Client\BookingController::test
 * @see app/Http/Controllers/Client/BookingController.php:350
 * @route '/booking/test'
 */
    const testForm = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
        action: test.url(options),
        method: 'get',
    })

            /**
* @see \App\Http\Controllers\Client\BookingController::test
 * @see app/Http/Controllers/Client/BookingController.php:350
 * @route '/booking/test'
 */
        testForm.get = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: test.url(options),
            method: 'get',
        })
            /**
* @see \App\Http\Controllers\Client\BookingController::test
 * @see app/Http/Controllers/Client/BookingController.php:350
 * @route '/booking/test'
 */
        testForm.head = (options?: RouteQueryOptions): RouteFormDefinition<'get'> => ({
            action: test.url({
                        [options?.mergeQuery ? 'mergeQuery' : 'query']: {
                            _method: 'HEAD',
                            ...(options?.query ?? options?.mergeQuery ?? {}),
                        }
                    }),
            method: 'get',
        })
    
    test.form = testForm
const BookingController = { summary, checkout, success, view, addRoom, removeRoom, saveSummary, saveSummeryAndRoomDetails, updateCheckout, store, clear, test }

export default BookingController