-module(oaspec@codegen@ir). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/oaspec/codegen/ir.gleam"). -export_type([module_/0, declaration/0, type_def/0, field/0, variant/0]). -type module_() :: {module, binary(), list(binary()), list(declaration())}. -type declaration() :: {declaration, gleam@option:option(binary()), type_def()}. -type type_def() :: {type_alias, binary(), binary()} | {record_type, binary(), list(field())} | {union_type, binary(), list(variant())} | {enum_type, binary(), list(binary())}. -type field() :: {field, binary(), binary()}. -type variant() :: {variant_with_type, binary(), binary()} | {variant_empty, binary()}.