import { defineBrand } from '../define.js'

export default defineBrand({
  id: 'gpt',
  label: 'GPT',
  canonicalVendorId: 'openai',
  defaultCapabilities: {
    supportsVision: true,
    supportsStreaming: true,
    supportsFunctionCalling: true,
    supportsJsonMode: true,
    supportsReasoning: false,
    supportsPreciseTokenCount: true,
  },
  modelIds: [
    'gpt-5.5',
    'gpt-5.5-mini',
    'gpt-5.5-nano',
    'gpt-5.4',
    'gpt-5.4-mini',
    'gpt-5.4-nano',
    'gpt-5-mini',
    'gpt-4.1',
    'gpt-4.1-mini',
    'gpt-4.1-nano',
    'gpt-4o',
    'gpt-4o-mini',
    'gpt-4-turbo',
    'gpt-4',
    'o1-preview',
    'o1-mini',
    'o1-pro',
    'o1',
    'o3-mini',
    'o3',
    'o4-mini',
  ],
})
