// This file is auto-generated by @hey-api/openapi-ts

import { oc } from '@orpc/contract'
import * as z from 'zod'

import {
  zGetRemoteFilesByUrlPath,
  zGetRemoteFilesByUrlResponse,
  zPostRemoteFilesUploadBody,
  zPostRemoteFilesUploadResponse,
} from './zod.gen'

export const post = oc
  .route({
    inputStructure: 'detailed',
    method: 'POST',
    operationId: 'postRemoteFilesUpload',
    path: '/remote-files/upload',
    successStatus: 201,
    tags: ['console'],
  })
  .input(z.object({ body: zPostRemoteFilesUploadBody }))
  .output(zPostRemoteFilesUploadResponse)

export const upload = {
  post,
}

export const get = oc
  .route({
    inputStructure: 'detailed',
    method: 'GET',
    operationId: 'getRemoteFilesByUrl',
    path: '/remote-files/{url}',
    tags: ['console'],
  })
  .input(z.object({ params: zGetRemoteFilesByUrlPath }))
  .output(zGetRemoteFilesByUrlResponse)

export const byUrl = {
  get,
}

export const remoteFiles = {
  upload,
  byUrl,
}

export const contract = {
  remoteFiles,
}
