import { PartitionDefinition } from '@elaraai/core/data'; import { StringType } from '@elaraai/core/east'; import { ELARASchema } from '@elaraai/core/schema'; import { PropertyStructure, ProcessStructure, AgentStructure, ResourceStructure } from '@elaraai/core/structure'; /** @internal */ declare type ExternalPropertySelection = { property: PropertyStructure; marker?: PropertyStructure; }; /** * A {@link SimulationPlugin} convenience function to simplify reporting of all process properties. * * @category Structure */ export declare function SimulationProcessProperties(process: ProcessStructure): Record; /** * A {@link SimulationPluginDefinition} to configure the {@link SimulationPlugin}. * * @category Structure */ export declare type SimulationPluginDefinition = { /** the name of the plugin pipeline output */ name: string; /** the entity to create the plugin from */ entity: AgentStructure | ResourceStructure | ProcessStructure; /** the properties to include from the entity */ properties: Record; /** overwrite the marker field name with this string */ marker?: string; /** the partitions to create in the result */ partitions?: Record; /** prepend the artefact names with this */ prepend?: string; /** true if information about operations be included */ operations?: boolean; /** true if information about ml functions be included */ ml?: boolean; }; /** * Construct a {@link Pipeline} whose output contains the simulation results for the specified entity's properties per scenario with supporting diagnostic pages. * * @param definition: the desired {@link SimulationPluginDefinition}. * @return a {@link ELARASchema} containing a {@link SimulationPluginDefinition} contents * * @category Structure * * @example * ```typescript * // import a `Resource` Schema containing the `MLFunction`. * import cash from "./gen/cash.structure" * //Create a SimulationPlugin generating results pipeline for a cash balance. * const simulation = SimulationPlugin({ * name: "Cash Balance", * entity: cash, * properties: { * "Balance": money.properties.balance, * } * }) * ``` */ export declare function SimulationPlugin(def: SimulationPluginDefinition): ELARASchema; export {}; //# sourceMappingURL=simulation.d.ts.map