import { ConfigurationPostProcessor } from "@atomist/automation-client/lib/configuration";
import { ConfigurationValues } from "../../api/machine/ConfigurationValues";
import { SoftwareDeliveryMachine } from "../../api/machine/SoftwareDeliveryMachine";
import { LocalSoftwareDeliveryMachineConfiguration } from "./LocalSoftwareDeliveryMachineOptions";
/**
 * Options passed to the set up of the SDM.
 */
export interface ConfigureOptions extends ConfigurationValues {
}
/**
 * Type that can create a fully configured SDM
 */
export declare type SoftwareDeliveryMachineMaker = (configuration: LocalSoftwareDeliveryMachineConfiguration) => SoftwareDeliveryMachine | Promise<SoftwareDeliveryMachine>;
/**
 * Configure and set up a Software Delivery Machine instance with the automation-client framework for standalone
 * or single goal based execution
 * @param {(configuration: (Configuration & SoftwareDeliveryMachineOptions)) => SoftwareDeliveryMachine} machineMaker
 * @param {ConfigureOptions} options
 * @returns {ConfigurationPostProcessor}
 */
export declare function configureSdm(machineMaker: SoftwareDeliveryMachineMaker, options?: ConfigureOptions): ConfigurationPostProcessor<LocalSoftwareDeliveryMachineConfiguration>;
//# sourceMappingURL=configureSdm.d.ts.map