import { NodeDefinition, NodeLike, StatelessGraphNode, StatelessNodeDefinition, StatelessNodeType } from '../../types/graph'; /** * An instance of the [[startCase]] node. * See the [[startCase]] documentation to find out more. */ export interface StartCaseNode extends StatelessGraphNode<'start-case', StartCaseNodeProperties> { } /** * A definition of the [[startCase]] node. * See the [[startCase]] documentation to find out more. */ export interface StartCaseNodeDefinition extends StatelessNodeDefinition<'start-case', StartCaseNodeProperties> { } export interface StartCaseNodeProperties { subject: NodeDefinition; } /** * The implementation of the [[startCase]] node. * See the [[startCase]] documentation to learn more. */ export declare const StartCaseNodeType: StatelessNodeType<'start-case', StartCaseNodeProperties>; /** * Creates a new instance of a [[startCased]] node, which is used when converting a string to a start case string. The node expects * the subject to be a [[value]] that contains a string value. It works in a similar way to the * `startCase` method from `lodash`: https://lodash.com/docs/4.17.4#startCase * * * @example **Convert string to start case** * ```js * import muster, { startCase } from '@dws/muster'; * * const app = muster({}); * * await app.resolve(startCase('Hello World')); * // === 'Hello World' * * await app.resolve(startCase('hello world')); * // === 'Hello World' * * await app.resolve(startCase('HELLO world')); * // === 'HELLO World' * ``` */ export declare function startCase(subject: NodeLike): StartCaseNodeDefinition; export declare function isStartCaseNodeDefinition(value: NodeDefinition): value is StartCaseNodeDefinition;