use pyo3::prelude::*;
use crate::{
Arc, Background, Border, ColorGradient, ColorKind, ConicalGradient, Corners, Debug, Ellipse,
Font, Generator, Icon, Image, IrregularPolygonSides, Layer, LayerOffset, Layout, Line,
LinearGradient, Mask, Polygon, PolygonSides, PreserveAspect, Presets, RadialGradient,
Rectangle, RegularPolygonSides, Size, SolidColor, Spread, Typography, TypographyAlign, Weight,
};
#[pymodule]
fn img_gen(m: &Bound<'_, PyModule>) -> PyResult<()> {
m.add_class::<Border>()?;
m.add_class::<Background>()?;
m.add_class::<Icon>()?;
m.add_class::<PreserveAspect>()?;
m.add_class::<SolidColor>()?;
m.add_class::<Debug>()?;
m.add_class::<Ellipse>()?;
m.add_class::<Arc>()?;
m.add_class::<Polygon>()?;
m.add_class::<PolygonSides>()?;
m.add_class::<RegularPolygonSides>()?;
m.add_class::<IrregularPolygonSides>()?;
m.add_class::<Font>()?;
m.add_class::<LayerOffset>()?;
m.add_class::<Layer>()?;
m.add_class::<Layout>()?;
m.add_class::<Line>()?;
m.add_class::<Mask>()?;
m.add_class::<Rectangle>()?;
m.add_class::<Corners>()?;
m.add_class::<Size>()?;
m.add_class::<Typography>()?;
m.add_class::<TypographyAlign>()?;
m.add_class::<Weight>()?;
m.add_class::<ColorKind>()?;
m.add_class::<SolidColor>()?;
m.add_class::<ColorGradient>()?;
m.add_class::<LinearGradient>()?;
m.add_class::<RadialGradient>()?;
m.add_class::<ConicalGradient>()?;
m.add_class::<Presets>()?;
m.add_class::<Spread>()?;
m.add_class::<Image>()?;
m.add_class::<Generator>()?;
Ok(())
}