declare interface Feature { type: 'Feature'; geometry: T; properties: Record; bbox?: number[]; } declare interface FeatureCollection { type: 'FeatureCollection'; features: Feature[]; bbox?: number[]; } export declare function (data: FeatureCollection, option?: OptionType_3): { dbf: DataView; cpg: DataView; }[]; export declare function (data: FeatureCollection, option?: OptionType_2): { shp: DataView; shx: DataView; }[]; declare type GeoJsonGeometry = PointGeometry | LineStringGeometry | PolygonGeometry | MultiPointGeometry | MultiLineStringGeometry | MultiPolygonGeometry; export declare function GeoJSONToShape>(geoJSON: FeatureCollection | string, option?: { returnFile?: T; returnZip?: Z; fileName?: string; }): Promise; declare type LineStringCoordinates = Position[]; declare interface LineStringGeometry { type: 'LineString'; coordinates: LineStringCoordinates; bbox?: number[]; } declare type MultiLineStringCoordinates = Position[][]; declare interface MultiLineStringGeometry { type: 'MultiLineString'; coordinates: MultiLineStringCoordinates; bbox?: number[]; } declare type MultiPointCoordinates = Position[]; declare interface MultiPointGeometry { type: 'MultiPoint'; coordinates: MultiPointCoordinates; bbox?: number[]; } declare type MultiPolygonCoordinates = Position[][][]; declare interface MultiPolygonGeometry { type: 'MultiPolygon'; coordinates: MultiPolygonCoordinates; bbox?: number[]; } declare type OptionType = { removeBbox?: boolean; }; declare type OptionType_2 = {}; declare type OptionType_3 = { encoding?: string; }; export declare function (data: File | ArrayBuffer | DataView, encoding?: string): Promise[]>; export declare function (data: File | ArrayBuffer | DataView, option?: OptionType): Promise<(GeoJsonGeometry | null)[]>; declare type PointCoordinates = Position; declare interface PointGeometry { type: 'Point'; coordinates: PointCoordinates; bbox?: number[]; } declare type PolygonCoordinates = Position[][]; declare interface PolygonGeometry { type: 'Polygon'; coordinates: PolygonCoordinates; bbox?: number[]; } declare type Position = [number, number] | [number, number, number]; declare type ReturnList = T extends true ? ({ cpg: File; dbf: File; shp: File; shx: File; type: ShpType; }[]) : ({ cpg: DataView; dbf: DataView; shp: DataView; shx: DataView; type: ShpType; }[]); export declare function ShapeAutoToGeoJSON(files: File[] | File | FileList, options?: { removeBbox?: boolean; }): Promise; declare type ShpType = typeof shpType[number]; declare const shpType: readonly ["Point", "MultiPoint", "Polyline", "Polygon", "ZPoint", "ZMultiPoint", "ZPolyline", "ZPolygon"]; export { }