import type { JoinTableDataSource } from "./JoinTableDataSource.js";
import type { QueryTableDataSource } from "./QueryTableDataSource.js";
import type { RasterDataSource } from "./RasterDataSource.js";
import type { TableDataSource } from "./TableDataSource.js";
/**
 * This object applies if the layerDefinition source is set to DynamicDataLayer.
 * See
 * {@link https://developers.arcgis.com/web-map-specification/objects/dataSource/}
 * {@link https://developers.arcgis.com/web-scene-specification/objects/dataSource/}.
 *
 * @deprecated Use "json/*" modules instead.
 */
export type DataSource = RasterDataSource | JoinTableDataSource | QueryTableDataSource | TableDataSource;
/**
 * Base class for DataSource. See
 * {@link https://developers.arcgis.com/web-map-specification/objects/dataSource/}
 * {@link https://developers.arcgis.com/web-scene-specification/objects/dataSource/}.
 *
 * @deprecated Use "json/*" modules instead.
 */
export interface DataSourceBase {
    /**
     * Type of the DataSource. See {@link portal/DataSource!DataSourceType}.
     */
    type: DataSourceType;
    /**
     * The unique string value used to identify the data-source's workspace.
     */
    workspaceId?: string;
}
/**
 * The type of the DataSource.
 *
 * @deprecated Use "json/*" modules instead.
 */
export type DataSourceType = "joinTable" | "queryTable" | "raster" | "table";
