import { queryParams, type RouteQueryOptions, type RouteDefinition } from './../../../../../wayfinder'
/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getAvailableThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:277
* @route '/api/v1/theme/available'
*/
export const getAvailableThemes = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getAvailableThemes.url(options),
    method: 'get',
})

getAvailableThemes.definition = {
    methods: ["get","head"],
    url: '/api/v1/theme/available',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getAvailableThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:277
* @route '/api/v1/theme/available'
*/
getAvailableThemes.url = (options?: RouteQueryOptions) => {
    return getAvailableThemes.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getAvailableThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:277
* @route '/api/v1/theme/available'
*/
getAvailableThemes.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getAvailableThemes.url(options),
    method: 'get',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getAvailableThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:277
* @route '/api/v1/theme/available'
*/
getAvailableThemes.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: getAvailableThemes.url(options),
    method: 'head',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getActiveTheme
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:217
* @route '/api/v1/theme/active'
*/
export const getActiveTheme = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getActiveTheme.url(options),
    method: 'get',
})

getActiveTheme.definition = {
    methods: ["get","head"],
    url: '/api/v1/theme/active',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getActiveTheme
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:217
* @route '/api/v1/theme/active'
*/
getActiveTheme.url = (options?: RouteQueryOptions) => {
    return getActiveTheme.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getActiveTheme
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:217
* @route '/api/v1/theme/active'
*/
getActiveTheme.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getActiveTheme.url(options),
    method: 'get',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getActiveTheme
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:217
* @route '/api/v1/theme/active'
*/
getActiveTheme.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: getActiveTheme.url(options),
    method: 'head',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getAllThemesWithAccess
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:378
* @route '/api/v1/theme/all'
*/
export const getAllThemesWithAccess = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getAllThemesWithAccess.url(options),
    method: 'get',
})

getAllThemesWithAccess.definition = {
    methods: ["get","head"],
    url: '/api/v1/theme/all',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getAllThemesWithAccess
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:378
* @route '/api/v1/theme/all'
*/
getAllThemesWithAccess.url = (options?: RouteQueryOptions) => {
    return getAllThemesWithAccess.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getAllThemesWithAccess
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:378
* @route '/api/v1/theme/all'
*/
getAllThemesWithAccess.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getAllThemesWithAccess.url(options),
    method: 'get',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getAllThemesWithAccess
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:378
* @route '/api/v1/theme/all'
*/
getAllThemesWithAccess.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: getAllThemesWithAccess.url(options),
    method: 'head',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPremiumThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:454
* @route '/api/v1/theme/premium'
*/
const getPremiumThemes914a591e7364303c19909b5b3a61f29e = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getPremiumThemes914a591e7364303c19909b5b3a61f29e.url(options),
    method: 'get',
})

getPremiumThemes914a591e7364303c19909b5b3a61f29e.definition = {
    methods: ["get","head"],
    url: '/api/v1/theme/premium',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPremiumThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:454
* @route '/api/v1/theme/premium'
*/
getPremiumThemes914a591e7364303c19909b5b3a61f29e.url = (options?: RouteQueryOptions) => {
    return getPremiumThemes914a591e7364303c19909b5b3a61f29e.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPremiumThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:454
* @route '/api/v1/theme/premium'
*/
getPremiumThemes914a591e7364303c19909b5b3a61f29e.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getPremiumThemes914a591e7364303c19909b5b3a61f29e.url(options),
    method: 'get',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPremiumThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:454
* @route '/api/v1/theme/premium'
*/
getPremiumThemes914a591e7364303c19909b5b3a61f29e.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: getPremiumThemes914a591e7364303c19909b5b3a61f29e.url(options),
    method: 'head',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPremiumThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:454
* @route '/theme/premium'
*/
const getPremiumThemes1a13109c444e1dedbee8657d86575ac5 = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getPremiumThemes1a13109c444e1dedbee8657d86575ac5.url(options),
    method: 'get',
})

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

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPremiumThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:454
* @route '/theme/premium'
*/
getPremiumThemes1a13109c444e1dedbee8657d86575ac5.url = (options?: RouteQueryOptions) => {
    return getPremiumThemes1a13109c444e1dedbee8657d86575ac5.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPremiumThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:454
* @route '/theme/premium'
*/
getPremiumThemes1a13109c444e1dedbee8657d86575ac5.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getPremiumThemes1a13109c444e1dedbee8657d86575ac5.url(options),
    method: 'get',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPremiumThemes
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:454
* @route '/theme/premium'
*/
getPremiumThemes1a13109c444e1dedbee8657d86575ac5.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: getPremiumThemes1a13109c444e1dedbee8657d86575ac5.url(options),
    method: 'head',
})

export const getPremiumThemes = {
    '/api/v1/theme/premium': getPremiumThemes914a591e7364303c19909b5b3a61f29e,
    '/theme/premium': getPremiumThemes1a13109c444e1dedbee8657d86575ac5,
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPurchaseHistory
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:508
* @route '/api/v1/theme/purchases'
*/
const getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f.url(options),
    method: 'get',
})

getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f.definition = {
    methods: ["get","head"],
    url: '/api/v1/theme/purchases',
} satisfies RouteDefinition<["get","head"]>

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPurchaseHistory
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:508
* @route '/api/v1/theme/purchases'
*/
getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f.url = (options?: RouteQueryOptions) => {
    return getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPurchaseHistory
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:508
* @route '/api/v1/theme/purchases'
*/
getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f.url(options),
    method: 'get',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPurchaseHistory
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:508
* @route '/api/v1/theme/purchases'
*/
getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f.url(options),
    method: 'head',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPurchaseHistory
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:508
* @route '/theme/purchases'
*/
const getPurchaseHistory3170a54168ee78000279420ea6d9bf72 = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getPurchaseHistory3170a54168ee78000279420ea6d9bf72.url(options),
    method: 'get',
})

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

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPurchaseHistory
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:508
* @route '/theme/purchases'
*/
getPurchaseHistory3170a54168ee78000279420ea6d9bf72.url = (options?: RouteQueryOptions) => {
    return getPurchaseHistory3170a54168ee78000279420ea6d9bf72.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPurchaseHistory
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:508
* @route '/theme/purchases'
*/
getPurchaseHistory3170a54168ee78000279420ea6d9bf72.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: getPurchaseHistory3170a54168ee78000279420ea6d9bf72.url(options),
    method: 'get',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::getPurchaseHistory
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:508
* @route '/theme/purchases'
*/
getPurchaseHistory3170a54168ee78000279420ea6d9bf72.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: getPurchaseHistory3170a54168ee78000279420ea6d9bf72.url(options),
    method: 'head',
})

export const getPurchaseHistory = {
    '/api/v1/theme/purchases': getPurchaseHistoryfb014d5086744e723fd2b8745e44f16f,
    '/theme/purchases': getPurchaseHistory3170a54168ee78000279420ea6d9bf72,
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::selector
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:23
* @route '/theme/selector'
*/
export const selector = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: selector.url(options),
    method: 'get',
})

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

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::selector
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:23
* @route '/theme/selector'
*/
selector.url = (options?: RouteQueryOptions) => {
    return selector.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::selector
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:23
* @route '/theme/selector'
*/
selector.get = (options?: RouteQueryOptions): RouteDefinition<'get'> => ({
    url: selector.url(options),
    method: 'get',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::selector
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:23
* @route '/theme/selector'
*/
selector.head = (options?: RouteQueryOptions): RouteDefinition<'head'> => ({
    url: selector.url(options),
    method: 'head',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::activate
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:117
* @route '/theme/activate'
*/
export const activate = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: activate.url(options),
    method: 'post',
})

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

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::activate
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:117
* @route '/theme/activate'
*/
activate.url = (options?: RouteQueryOptions) => {
    return activate.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::activate
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:117
* @route '/theme/activate'
*/
activate.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: activate.url(options),
    method: 'post',
})

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::deactivate
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:356
* @route '/theme/deactivate'
*/
export const deactivate = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: deactivate.url(options),
    method: 'post',
})

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

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::deactivate
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:356
* @route '/theme/deactivate'
*/
deactivate.url = (options?: RouteQueryOptions) => {
    return deactivate.definition.url + queryParams(options)
}

/**
* @see \Website\Theme\Http\Controllers\TenantThemeController::deactivate
* @see Website/Theme/app/Http/Controllers/TenantThemeController.php:356
* @route '/theme/deactivate'
*/
deactivate.post = (options?: RouteQueryOptions): RouteDefinition<'post'> => ({
    url: deactivate.url(options),
    method: 'post',
})

const TenantThemeController = { getAvailableThemes, getActiveTheme, getAllThemesWithAccess, getPremiumThemes, getPurchaseHistory, selector, activate, deactivate }

export default TenantThemeController