import { Lookup } from "../Collections";
import { Component } from "./Component";
import { DeploymentConfig } from "./DeploymentConfig";
import { Form } from "./Form";
import { Reference } from "./Reference";
import { Resource } from "./Resource";
import { Step } from "./Step";
import { Transition } from "./Transition";
/** Describes a program that may be run by Workflow. */
export interface Program extends Resource {
    /** Indicates the components of the program. */
    components?: Component[];
    /** Indicates the forms in the program. */
    forms?: Form[];
    /** Indicates the steps in the program. */
    steps?: Step[];
    /** Indicates the references for the program. */
    references?: Reference[];
    /** Indicates the transitions in the program. */
    transitions?: Transition[];
    /** Indicates the start of the program. */
    start?: Step;
    /** Indicates the language strings in the program. */
    strings?: Lookup<Lookup<string>>;
    /** Indicates details related to where the program is intended to be deployed. */
    deploymentConfig?: DeploymentConfig;
}
