///|
type FieldId = @core.FieldId

///|
type DocId = @core.DocId

///|
type Document = @core.Document

///|
type StoredDocument = @core.StoredDocument

///|
type Term = @core.Term

///|
type PersistenceError = @core.PersistenceError

///|
type Schema = @schema.Schema

///|
type SchemaBuilder = @schema.SchemaBuilder

///|
type TextOptions = @schema.TextOptions

///|
type AnalysisError = @analysis.AnalysisError

///|
type TokenizerManager = @analysis.TokenizerManager

///|
type WhitespaceAnalyzer = @analysis.WhitespaceAnalyzer

///|
type SegmentDecoder = @codec.SegmentDecoder

///|
let segment_header_length : Int = @codec.segment_header_length

///|
fn segment_checksum(bytes : Bytes) -> UInt {
  @codec.segment_checksum(bytes)
}

///|
fn write_bool(buffer : @buffer.Buffer, value : Bool) -> Unit {
  @codec.write_bool(buffer, value)
}

///|
fn write_string(buffer : @buffer.Buffer, value : String) -> Unit {
  @codec.write_string(buffer, value)
}

///|
fn valid_tokenizer_name(name : String) -> Bool {
  @schema.valid_tokenizer_name(name)
}