import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; /** * Creates a flow in the specified agent. Note: You should always train a flow prior to sending it queries. See the [training documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). */ export declare class Flow extends pulumi.CustomResource { /** * Get an existing Flow resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Flow; /** * Returns true if the given object is an instance of Flow. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Flow; /** * Hierarchical advanced settings for this flow. The settings exposed at the lower level overrides the settings exposed at the higher level. */ readonly advancedSettings: pulumi.Output; readonly agentId: pulumi.Output; /** * The description of the flow. The maximum length is 500 characters. If exceeded, the request is rejected. */ readonly description: pulumi.Output; /** * The human-readable name of the flow. */ readonly displayName: pulumi.Output; /** * A flow's event handlers serve two purposes: * They are responsible for handling events (e.g. no match, webhook errors) in the flow. * They are inherited by every page's event handlers, which can be used to handle common events regardless of the current page. Event handlers defined in the page have higher priority than those defined in the flow. Unlike transition_routes, these handlers are evaluated on a first-match basis. The first one that matches the event get executed, with the rest being ignored. */ readonly eventHandlers: pulumi.Output; /** * Optional. Knowledge connector configuration. */ readonly knowledgeConnectorSettings: pulumi.Output; /** * The language of the following fields in `flow`: * `Flow.event_handlers.trigger_fulfillment.messages` * `Flow.event_handlers.trigger_fulfillment.conditional_cases` * `Flow.transition_routes.trigger_fulfillment.messages` * `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used. */ readonly languageCode: pulumi.Output; readonly location: pulumi.Output; /** * The unique identifier of the flow. Format: `projects//locations//agents//flows/`. */ readonly name: pulumi.Output; /** * NLU related settings of the flow. */ readonly nluSettings: pulumi.Output; readonly project: pulumi.Output; /** * A flow's transition route group serve two purposes: * They are responsible for matching the user's first utterances in the flow. * They are inherited by every page's transition route groups. Transition route groups defined in the page have higher priority than those defined in the flow. Format:`projects//locations//agents//flows//transitionRouteGroups/` or `projects//locations//agents//transitionRouteGroups/` for agent-level groups. */ readonly transitionRouteGroups: pulumi.Output; /** * A flow's transition routes serve two purposes: * They are responsible for matching the user's first utterances in the flow. * They are inherited by every page's transition routes and can support use cases such as the user saying "help" or "can I talk to a human?", which can be handled in a common way regardless of the current page. Transition routes defined in the page have higher priority than those defined in the flow. TransitionRoutes are evalauted in the following order: * TransitionRoutes with intent specified. * TransitionRoutes with only condition specified. TransitionRoutes with intent specified are inherited by pages in the flow. */ readonly transitionRoutes: pulumi.Output; /** * Create a Flow resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: FlowArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Flow resource. */ export interface FlowArgs { /** * Hierarchical advanced settings for this flow. The settings exposed at the lower level overrides the settings exposed at the higher level. */ advancedSettings?: pulumi.Input; agentId: pulumi.Input; /** * The description of the flow. The maximum length is 500 characters. If exceeded, the request is rejected. */ description?: pulumi.Input; /** * The human-readable name of the flow. */ displayName: pulumi.Input; /** * A flow's event handlers serve two purposes: * They are responsible for handling events (e.g. no match, webhook errors) in the flow. * They are inherited by every page's event handlers, which can be used to handle common events regardless of the current page. Event handlers defined in the page have higher priority than those defined in the flow. Unlike transition_routes, these handlers are evaluated on a first-match basis. The first one that matches the event get executed, with the rest being ignored. */ eventHandlers?: pulumi.Input[]>; /** * Optional. Knowledge connector configuration. */ knowledgeConnectorSettings?: pulumi.Input; /** * The language of the following fields in `flow`: * `Flow.event_handlers.trigger_fulfillment.messages` * `Flow.event_handlers.trigger_fulfillment.conditional_cases` * `Flow.transition_routes.trigger_fulfillment.messages` * `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not specified, the agent's default language is used. [Many languages](https://cloud.google.com/dialogflow/cx/docs/reference/language) are supported. Note: languages must be enabled in the agent before they can be used. */ languageCode?: pulumi.Input; location?: pulumi.Input; /** * The unique identifier of the flow. Format: `projects//locations//agents//flows/`. */ name?: pulumi.Input; /** * NLU related settings of the flow. */ nluSettings?: pulumi.Input; project?: pulumi.Input; /** * A flow's transition route group serve two purposes: * They are responsible for matching the user's first utterances in the flow. * They are inherited by every page's transition route groups. Transition route groups defined in the page have higher priority than those defined in the flow. Format:`projects//locations//agents//flows//transitionRouteGroups/` or `projects//locations//agents//transitionRouteGroups/` for agent-level groups. */ transitionRouteGroups?: pulumi.Input[]>; /** * A flow's transition routes serve two purposes: * They are responsible for matching the user's first utterances in the flow. * They are inherited by every page's transition routes and can support use cases such as the user saying "help" or "can I talk to a human?", which can be handled in a common way regardless of the current page. Transition routes defined in the page have higher priority than those defined in the flow. TransitionRoutes are evalauted in the following order: * TransitionRoutes with intent specified. * TransitionRoutes with only condition specified. TransitionRoutes with intent specified are inherited by pages in the flow. */ transitionRoutes?: pulumi.Input[]>; }