#ifndef LIBVISIO_RS_H
#define LIBVISIO_RS_H
#include <stdarg.h>
#include <stdbool.h>
#include <stdint.h>
#include <stdlib.h>
#define VSD_FOREIGN_DATA 12
#define VSD_OLE_LIST 13
#define VSD_TEXT 14
#define VSD_PAGE 21
#define VSD_COLORS 22
#define VSD_FONT_IX 25
#define VSD_STENCILS 29
#define VSD_STENCIL_PAGE 30
#define VSD_OLE_DATA 31
#define VSD_PAGES 39
#define VSD_NAME_LIST2 50
#define VSD_NAME2 51
#define VSD_NAMEIDX123 52
#define VSD_PAGE_SHEET 70
#define VSD_SHAPE_GROUP 71
#define VSD_SHAPE_SHAPE 72
#define VSD_SHAPE_FOREIGN 78
#define VSD_SHAPE_LIST 101
#define VSD_CHAR_LIST 105
#define VSD_PARA_LIST 106
#define VSD_GEOM_LIST 108
#define VSD_SHAPE_ID 131
#define VSD_LINE 133
#define VSD_FILL_AND_SHADOW 134
#define VSD_TEXT_BLOCK 135
#define VSD_GEOMETRY 137
#define VSD_MOVE_TO 138
#define VSD_LINE_TO 139
#define VSD_ARC_TO 140
#define VSD_ELLIPSE 143
#define VSD_ELLIPTICAL_ARC_TO 144
#define VSD_PAGE_PROPS 146
#define VSD_CHAR_IX 148
#define VSD_PARA_IX 149
#define VSD_FOREIGN_DATA_TYPE 152
#define VSD_CONNECTION_POINTS 153
#define VSD_XFORM_DATA 155
#define VSD_TEXT_XFORM 156
#define VSD_XFORM_1D 157
#define VSD_SPLINE_START 165
#define VSD_SPLINE_KNOT 166
#define VSD_LAYER_MEMBERSHIP 167
#define VSD_INFINITE_LINE 141
#define VSD_POLYLINE_TO 193
#define VSD_NURBS_TO 195
#define VSD_NAMEIDX 201
#define VSD_FONTFACE 215
#define VSD_FONTFACES 216
#define VSD_NAME 45
typedef struct VisioDocument {
Document inner;
} VisioDocument;
#ifdef __cplusplus
extern "C" {
#endif
LIBVISIO_API struct VisioDocument *visio_open(const char *path);
LIBVISIO_API uintptr_t visio_get_page_count(const struct VisioDocument *doc);
LIBVISIO_API char *visio_convert_page_to_svg(const struct VisioDocument *doc, uintptr_t page);
LIBVISIO_API char *visio_extract_text(const struct VisioDocument *doc);
LIBVISIO_API void visio_free(struct VisioDocument *doc);
LIBVISIO_API void visio_free_string(char *s);
#ifdef __cplusplus
} #endif
#endif