pub use super::csv_reader::CsvReader;
pub use super::csv_readers::CsvReadersData;
pub use super::csv_row::CsvRow;
pub use super::csv_writer::CsvWriterData;
pub use super::read_map::ReadMapData;
use vato007::ingey::types::Host;
use wasmtime::component::{bindgen, ResourceTable};

bindgen!({
    with: {
        "vato007:ingey/types/csv-row": CsvRow,
        "vato007:ingey/types/csv-reader": CsvReader,
        "vato007:ingey/types/csv-readers": CsvReadersData,
        "vato007:ingey/types/csv-writer": CsvWriterData,
        "vato007:ingey/types/read-map": ReadMapData,
    }
});

pub struct DynamicState {
    pub resources: ResourceTable,
}

impl DynamicState {
    pub fn new() -> DynamicState {
        DynamicState {
            resources: ResourceTable::new(),
        }
    }
}

impl Host for DynamicState {}
