import { queryParams, type RouteQueryOptions, type RouteDefinition, type RouteFormDefinition } from './../../../../wayfinder'
/**
* @see routes/xero.php:89
* @route '/xero/sync/customers-from-xero/resync'
*/
export const resync = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: resync.url(options),
    method: 'post',
})

resync.definition = {
    methods: ["post"],
    url: '/xero/sync/customers-from-xero/resync',
} satisfies RouteDefinition<["post"]>

/**
* @see routes/xero.php:89
* @route '/xero/sync/customers-from-xero/resync'
*/
resync.url = (options?: RouteQueryOptions) => {
    return resync.definition.url + queryParams(options)
}

/**
* @see routes/xero.php:89
* @route '/xero/sync/customers-from-xero/resync'
*/
resync.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: resync.url(options),
    method: 'post',
})

/**
* @see routes/xero.php:89
* @route '/xero/sync/customers-from-xero/resync'
*/
const resyncForm = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: resync.url(options),
    method: 'post',
})

/**
* @see routes/xero.php:89
* @route '/xero/sync/customers-from-xero/resync'
*/
resyncForm.post = (options?: RouteQueryOptions): RouteFormDefinition<'post'> => ({
    action: resync.url(options),
    method: 'post',
})

resync.form = resyncForm

const customersFromXero = {
    resync: Object.assign(resync, resync),
}

export default customersFromXero