@salesforce/source-deploy-retrieve
Version:
JavaScript library to run Salesforce metadata deploys and retrieves
46 lines (45 loc) • 1.27 kB
TypeScript
import { SourcePath } from '../common/types';
import { MetadataType } from '../registry/types';
import { SourceComponent } from './sourceComponent';
export type MetadataComponent = {
fullName: string;
type: MetadataType;
parent?: MetadataComponent;
};
export type MetadataMember = {
fullName: string;
type: string;
};
export type ComponentLike = MetadataComponent | MetadataMember;
/**
* Properties of a metadata xml's file name
*/
export type MetadataXml = {
fullName: string;
suffix?: string;
path: SourcePath;
};
export type VirtualFile = {
name: string;
data?: Buffer;
};
export type VirtualDirectory = {
dirPath: SourcePath;
children: Array<VirtualFile | string>;
};
/**
* Infers the source format structure of a metadata component when given a file path.
*/
export type SourceAdapter = {
/**
* Create a metadata component object from a file path.
*
* @param fsPath Path to resolve
* @param isResolvingSource Whether the path to resolve is a single file
*/
getComponent(fsPath: SourcePath, isResolvingSource?: boolean): SourceComponent | undefined;
/**
* Whether the adapter allows content-only metadata definitions.
*/
allowMetadataWithContent(): boolean;
};