/* Generated by @deepseek-ai/dsh-typert-generator from the Host FaceModel — do not edit. */
import { z } from 'zod'

const _deepseek_ai_dsh_message_feedback_messageFeedback_delete_parameter_0$schema = z.object({
  'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
  'messageId': z.intersection(z.string(), z.unknown()).readonly(),
  'ifVersion': z.intersection(z.string(), z.unknown()).readonly(),
})
const _deepseek_ai_dsh_message_feedback_messageFeedback_delete_result$schema = z.union([z.object({
  'ok': z.literal(true).readonly(),
  'value': z.object({
  'absent': z.literal(true).readonly(),
}).readonly(),
}), z.object({
  'ok': z.literal(false).readonly(),
  'error': z.union([z.object({
  'code': z.literal("session-not-found").readonly(),
  'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
}), z.object({
  'code': z.literal("version-conflict").readonly(),
  'current': z.union([z.literal(null), z.object({
  'messageId': z.intersection(z.string(), z.unknown()).readonly(),
  'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
  'note': z.string().readonly().optional(),
  'version': z.intersection(z.string(), z.unknown()).readonly(),
  'createdAt': z.number().readonly(),
  'updatedAt': z.number().readonly(),
})]).readonly(),
})]).readonly(),
})])
const _deepseek_ai_dsh_message_feedback_messageFeedback_list_parameter_0$schema = z.object({
  'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
})
const _deepseek_ai_dsh_message_feedback_messageFeedback_list_result$schema = z.union([z.object({
  'ok': z.literal(true).readonly(),
  'value': z.object({
  'items': z.array(z.object({
  'messageId': z.intersection(z.string(), z.unknown()).readonly(),
  'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
  'note': z.string().readonly().optional(),
  'version': z.intersection(z.string(), z.unknown()).readonly(),
  'createdAt': z.number().readonly(),
  'updatedAt': z.number().readonly(),
})).readonly(),
}).readonly(),
}), z.object({
  'ok': z.literal(false).readonly(),
  'error': z.object({
  'code': z.literal("session-not-found").readonly(),
  'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
}).readonly(),
})])
const _deepseek_ai_dsh_message_feedback_messageFeedback_put_parameter_0$schema = z.object({
  'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
  'messageId': z.intersection(z.string(), z.unknown()).readonly(),
  'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
  'note': z.string().readonly().optional(),
  'ifVersion': z.union([z.literal(null), z.intersection(z.string(), z.unknown())]).readonly(),
})
const _deepseek_ai_dsh_message_feedback_messageFeedback_put_result$schema = z.union([z.object({
  'ok': z.literal(true).readonly(),
  'value': z.object({
  'messageId': z.intersection(z.string(), z.unknown()).readonly(),
  'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
  'note': z.string().readonly().optional(),
  'version': z.intersection(z.string(), z.unknown()).readonly(),
  'createdAt': z.number().readonly(),
  'updatedAt': z.number().readonly(),
}).readonly(),
}), z.object({
  'ok': z.literal(false).readonly(),
  'error': z.union([z.object({
  'code': z.literal("session-not-found").readonly(),
  'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
}), z.object({
  'code': z.literal("target-not-found").readonly(),
  'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
  'messageId': z.intersection(z.string(), z.unknown()).readonly(),
}), z.object({
  'code': z.literal("version-conflict").readonly(),
  'current': z.union([z.literal(null), z.object({
  'messageId': z.intersection(z.string(), z.unknown()).readonly(),
  'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
  'note': z.string().readonly().optional(),
  'version': z.intersection(z.string(), z.unknown()).readonly(),
  'createdAt': z.number().readonly(),
  'updatedAt': z.number().readonly(),
})]).readonly(),
}), z.object({
  'code': z.literal("note-blank").readonly(),
}), z.object({
  'code': z.literal("note-too-large").readonly(),
  'maxBytes': z.number().readonly(),
  'actualBytes': z.number().readonly(),
})]).readonly(),
})])

export const TYPERT_REMOTE = {
  package: '@deepseek-ai/dsh-message-feedback',
  descriptors: [
    {
      id: '@deepseek-ai/dsh-message-feedback#messageFeedback/delete',
      service: 'messageFeedback',
      namespace: 'messageFeedback',
      method: 'delete',
      invocation: { kind: 'direct' },
      parameters: [
        {
          name: 'request',
          wire: 'request',
          source: 'json',
          codec: {
            mode: 'strict',
            typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackDeleteRequest',
            schema: _deepseek_ai_dsh_message_feedback_messageFeedback_delete_parameter_0$schema,
          },
        },
      ],
      result: {
        mode: 'strict',
        typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackDeleteResult',
        schema: _deepseek_ai_dsh_message_feedback_messageFeedback_delete_result$schema,
      },
      sourceLocation: {"file":"packages/feedback/message-feedback/src/index.ts","line":272,"column":3},
    },
    {
      id: '@deepseek-ai/dsh-message-feedback#messageFeedback/list',
      service: 'messageFeedback',
      namespace: 'messageFeedback',
      method: 'list',
      invocation: { kind: 'direct' },
      parameters: [
        {
          name: 'request',
          wire: 'request',
          source: 'json',
          codec: {
            mode: 'strict',
            typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackListRequest',
            schema: _deepseek_ai_dsh_message_feedback_messageFeedback_list_parameter_0$schema,
          },
        },
      ],
      result: {
        mode: 'strict',
        typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackListResult',
        schema: _deepseek_ai_dsh_message_feedback_messageFeedback_list_result$schema,
      },
      sourceLocation: {"file":"packages/feedback/message-feedback/src/index.ts","line":190,"column":9},
    },
    {
      id: '@deepseek-ai/dsh-message-feedback#messageFeedback/put',
      service: 'messageFeedback',
      namespace: 'messageFeedback',
      method: 'put',
      invocation: { kind: 'direct' },
      parameters: [
        {
          name: 'request',
          wire: 'request',
          source: 'json',
          codec: {
            mode: 'strict',
            typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackPutRequest',
            schema: _deepseek_ai_dsh_message_feedback_messageFeedback_put_parameter_0$schema,
          },
        },
      ],
      result: {
        mode: 'strict',
        typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackPutResult',
        schema: _deepseek_ai_dsh_message_feedback_messageFeedback_put_result$schema,
      },
      sourceLocation: {"file":"packages/feedback/message-feedback/src/index.ts","line":206,"column":3},
    },
  ],
}

export default TYPERT_REMOTE
