import { queryParams, type RouteQueryOptions, type RouteDefinition, type RouteFormDefinition } from './../../wayfinder'
/**
* @see \App\Http\Controllers\AiController::draft
* @see app/Http/Controllers/AiController.php:30
* @route '/ai/draft'
*/
export const draft = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: draft.url(options),
    method: 'post',
})

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

/**
* @see \App\Http\Controllers\AiController::draft
* @see app/Http/Controllers/AiController.php:30
* @route '/ai/draft'
*/
draft.url = (options?: RouteQueryOptions) => {
    return draft.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\AiController::draft
* @see app/Http/Controllers/AiController.php:30
* @route '/ai/draft'
*/
draft.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: draft.url(options),
    method: 'post',
})

/**
* @see \App\Http\Controllers\AiController::draft
* @see app/Http/Controllers/AiController.php:30
* @route '/ai/draft'
*/
const draftForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: draft.url(options),
    method: 'post',
})

/**
* @see \App\Http\Controllers\AiController::draft
* @see app/Http/Controllers/AiController.php:30
* @route '/ai/draft'
*/
draftForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: draft.url(options),
    method: 'post',
})

draft.form = draftForm

/**
* @see \App\Http\Controllers\AiController::suggestTechnician
* @see app/Http/Controllers/AiController.php:81
* @route '/ai/suggest-technician'
*/
export const suggestTechnician = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: suggestTechnician.url(options),
    method: 'post',
})

suggestTechnician.definition = {
    methods: ["post"],
    url: '/ai/suggest-technician',
} satisfies RouteDefinition<["post"]>

/**
* @see \App\Http\Controllers\AiController::suggestTechnician
* @see app/Http/Controllers/AiController.php:81
* @route '/ai/suggest-technician'
*/
suggestTechnician.url = (options?: RouteQueryOptions) => {
    return suggestTechnician.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\AiController::suggestTechnician
* @see app/Http/Controllers/AiController.php:81
* @route '/ai/suggest-technician'
*/
suggestTechnician.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: suggestTechnician.url(options),
    method: 'post',
})

/**
* @see \App\Http\Controllers\AiController::suggestTechnician
* @see app/Http/Controllers/AiController.php:81
* @route '/ai/suggest-technician'
*/
const suggestTechnicianForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: suggestTechnician.url(options),
    method: 'post',
})

/**
* @see \App\Http\Controllers\AiController::suggestTechnician
* @see app/Http/Controllers/AiController.php:81
* @route '/ai/suggest-technician'
*/
suggestTechnicianForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: suggestTechnician.url(options),
    method: 'post',
})

suggestTechnician.form = suggestTechnicianForm

/**
* @see \App\Http\Controllers\AiController::suggestDocument
* @see app/Http/Controllers/AiController.php:129
* @route '/ai/suggest-document'
*/
export const suggestDocument = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: suggestDocument.url(options),
    method: 'post',
})

suggestDocument.definition = {
    methods: ["post"],
    url: '/ai/suggest-document',
} satisfies RouteDefinition<["post"]>

/**
* @see \App\Http\Controllers\AiController::suggestDocument
* @see app/Http/Controllers/AiController.php:129
* @route '/ai/suggest-document'
*/
suggestDocument.url = (options?: RouteQueryOptions) => {
    return suggestDocument.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\AiController::suggestDocument
* @see app/Http/Controllers/AiController.php:129
* @route '/ai/suggest-document'
*/
suggestDocument.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: suggestDocument.url(options),
    method: 'post',
})

/**
* @see \App\Http\Controllers\AiController::suggestDocument
* @see app/Http/Controllers/AiController.php:129
* @route '/ai/suggest-document'
*/
const suggestDocumentForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: suggestDocument.url(options),
    method: 'post',
})

/**
* @see \App\Http\Controllers\AiController::suggestDocument
* @see app/Http/Controllers/AiController.php:129
* @route '/ai/suggest-document'
*/
suggestDocumentForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: suggestDocument.url(options),
    method: 'post',
})

suggestDocument.form = suggestDocumentForm

/**
* @see \App\Http\Controllers\AiController::assistant
* @see app/Http/Controllers/AiController.php:183
* @route '/ai/assistant'
*/
export const assistant = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: assistant.url(options),
    method: 'post',
})

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

/**
* @see \App\Http\Controllers\AiController::assistant
* @see app/Http/Controllers/AiController.php:183
* @route '/ai/assistant'
*/
assistant.url = (options?: RouteQueryOptions) => {
    return assistant.definition.url + queryParams(options)
}

/**
* @see \App\Http\Controllers\AiController::assistant
* @see app/Http/Controllers/AiController.php:183
* @route '/ai/assistant'
*/
assistant.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: assistant.url(options),
    method: 'post',
})

/**
* @see \App\Http\Controllers\AiController::assistant
* @see app/Http/Controllers/AiController.php:183
* @route '/ai/assistant'
*/
const assistantForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: assistant.url(options),
    method: 'post',
})

/**
* @see \App\Http\Controllers\AiController::assistant
* @see app/Http/Controllers/AiController.php:183
* @route '/ai/assistant'
*/
assistantForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: assistant.url(options),
    method: 'post',
})

assistant.form = assistantForm

const ai = {
    assistant: Object.assign(assistant, assistant),
    draft: Object.assign(draft, draft),
    suggestTechnician: Object.assign(suggestTechnician, suggestTechnician),
    suggestDocument: Object.assign(suggestDocument, suggestDocument),
}

export default ai