export type KbxExternalProviderPurpose = 'market-data-readonly' | 'disclosure-data-readonly'

export interface KbxExternalProviderOperationDefinition {
  id: string
  method: string
  path: string
  response: string
  trId?: string
  query?: readonly string[]
  authOperation?: boolean
  notes?: string
}

export interface KbxExternalProviderDefinition {
  id: string
  title: string
  ownerModule: 'COMMON' | 'OMS' | 'ERP' | 'WMS'
  purpose: KbxExternalProviderPurpose
  mutationAllowed: boolean
  officialSources: readonly string[]
  official: Record<string, unknown>
  kbxPolicy: Record<string, unknown>
  operations: readonly KbxExternalProviderOperationDefinition[]
}
