import { queryParams, type RouteQueryOptions, type RouteDefinition } from './../../wayfinder'
/**
* @see \Productivity\Note\Http\Controllers\NoteController::bulkAction
* @see Productivity/Note/app/Http/Controllers/NoteController.php:244
* @route '/notes/bulk-action'
*/
export const bulkAction = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: bulkAction.url(options),
    method: 'post',
})

bulkAction.definition = {
    methods: ["post"],
    url: '/notes/bulk-action',
} satisfies RouteDefinition<["post"]>

/**
* @see \Productivity\Note\Http\Controllers\NoteController::bulkAction
* @see Productivity/Note/app/Http/Controllers/NoteController.php:244
* @route '/notes/bulk-action'
*/
bulkAction.url = (options?: RouteQueryOptions) => {
    return bulkAction.definition.url + queryParams(options)
}

/**
* @see \Productivity\Note\Http\Controllers\NoteController::bulkAction
* @see Productivity/Note/app/Http/Controllers/NoteController.php:244
* @route '/notes/bulk-action'
*/
bulkAction.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: bulkAction.url(options),
    method: 'post',
})

/**
* @see \Productivity\Note\Http\Controllers\NoteController::emptyTrash
* @see Productivity/Note/app/Http/Controllers/NoteController.php:282
* @route '/notes/empty-trash'
*/
export const emptyTrash = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: emptyTrash.url(options),
    method: 'post',
})

emptyTrash.definition = {
    methods: ["post"],
    url: '/notes/empty-trash',
} satisfies RouteDefinition<["post"]>

/**
* @see \Productivity\Note\Http\Controllers\NoteController::emptyTrash
* @see Productivity/Note/app/Http/Controllers/NoteController.php:282
* @route '/notes/empty-trash'
*/
emptyTrash.url = (options?: RouteQueryOptions) => {
    return emptyTrash.definition.url + queryParams(options)
}

/**
* @see \Productivity\Note\Http\Controllers\NoteController::emptyTrash
* @see Productivity/Note/app/Http/Controllers/NoteController.php:282
* @route '/notes/empty-trash'
*/
emptyTrash.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: emptyTrash.url(options),
    method: 'post',
})

const notes = {
    bulkAction: Object.assign(bulkAction, bulkAction),
    emptyTrash: Object.assign(emptyTrash, emptyTrash),
}

export default notes