// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any,
 * @typescript-eslint/no-non-null-assertion */
import {A} from '../union-underlying-type/a.js';
import {B} from '../union-underlying-type/b.js';
import {C} from '../union-underlying-type/c.js';
export var ABC;
(function(ABC) {
ABC[ABC['NONE'] = 0] = 'NONE';
ABC[ABC['A'] = 555] = 'A';
ABC[ABC['B'] = 666] = 'B';
ABC[ABC['C'] = 777] = 'C';
})(ABC || (ABC = {}));
export function unionToAbc(type, accessor) {
  switch (ABC[type]) {
    case 'NONE':
      return null;
    case 'A':
      return accessor(new A());
    case 'B':
      return accessor(new B());
    case 'C':
      return accessor(new C());
    default:
      return null;
  }
}
export function unionListToAbc(type, accessor, index) {
  switch (ABC[type]) {
    case 'NONE':
      return null;
    case 'A':
      return accessor(index, new A());
    case 'B':
      return accessor(index, new B());
    case 'C':
      return accessor(index, new C());
    default:
      return null;
  }
}
