export interface WorkspaceElementObj {
    state: string;
    fullName: string;
    type: string;
    filePath: string;
    deleteSupported: boolean;
}
/**
 * This class represents the info for a sourcePath in the workspace
 */
export declare class WorkspaceElement {
    private metadataName;
    private fullName;
    private sourcePath;
    private state;
    private deleteSupported;
    constructor(metadataName: string, fullName: string, sourcePath: string, state: string, deleteSupported: boolean);
    /**
     * Gets the name for the metadata type of the workspace element - in the case of decomposition, this would be the type for the
     * decomposed element (ex. CustomField)
     *
     * @returns {string}
     */
    getMetadataName(): string;
    /**
     * Gets the fullName for the workspace element - in the case of decomposition, this would be the fullName of the
     * decomposed element (ex. for CustomField this would be 'CustomObjectName__c.CustomFieldName__c'
     *
     * @returns {string}
     */
    getFullName(): string;
    /**
     * Gets the source state of the workspace element
     *
     * @returns {string}
     */
    getState(): string;
    /**
     * Set the source state of the workspace element
     *
     * @param state
     */
    setState(state: any): void;
    /**
     * Gets the full path to the element in the workspace
     *
     * @returns {string}
     */
    getSourcePath(): string;
    /**
     * Returns true if the workspace element can be deleted from the scratch org
     *
     * @returns {boolean}
     */
    getDeleteSupported(): boolean;
    /**
     * Convenience method to return a plain old javascript object (aka POJO) of the
     * properties.  Used by commands for table output.
     *
     * @returns {WorkspaceElementObj}
     */
    toObject(): WorkspaceElementObj;
}
