S3method("[",arc.data)
S3method("[",arc.shape)

S3method(print,arc.data)
S3method(arc.shapeinfo,arc.data)

S3method(format,arc.productinfo)
S3method(print,arc.productinfo)

S3method(format,arc.portalinfo)
S3method(print,arc.portalinfo)

S3method(format,arc.shapeinfo)
S3method(print,arc.shapeinfo)

#repr method
export(repr_html.arc.productinfo)
export(repr_html.arc.portalinfo)
export(repr_html.arc.shapeinfo)
export(repr_html.arc.data)
export(repr_html.leaflet)

#leaflet
export(pointData.arc.data)
export(polygonData.arc.data)
S3method(leaflet::pointData, arc.data, pointData.arc.data)
S3method(leaflet::polygonData, arc.data, polygonData.arc.data)

#dplyr methods as S3 methods
export(arrange.arc.data)
export(filter.arc.data)
export(group_by.arc.data)
export(mutate.arc.data)
export(ungroup.arc.data)

export(.call_proxy,
  arc.check_product,
  arc.check_portal,
  arc.portal_connect,
  arc.data2sf,
  arc.data2sp,
  arc.delete,
  arc.env,
  arc.fromP4ToWkt,
  arc.fromWktToP4,
  arc.metadata,
  arc.open,
  arc.progress_label,
  arc.progress_pos,
  arc.raster,
  arc.select,
  arc.shape,
  arc.shape2sf,
  arc.shape2sp,
  arc.shapeinfo,
  arc.sp2data,
  arc.write,
  as.raster)

exportClasses(
  arc.container,
  arc.dataset,
  arc.datasetraster,
  arc.datasetrastermosaic,
  arc.feature,
  arc.raster,
  arc.shape,
  arc.table)

import(methods)
