import { IamClientCore } from "../core.js";
import { RequestOptions } from "../lib/sdks.js";
import * as components from "../models/components/index.js";
import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError } from "../models/errors/httpclienterrors.js";
import { IamClientError } from "../models/errors/iamclienterror.js";
import * as errors from "../models/errors/index.js";
import { ResponseValidationError } from "../models/errors/responsevalidationerror.js";
import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
import * as operations from "../models/operations/index.js";
import { APIPromise } from "../types/async.js";
import { Result } from "../types/fp.js";
/**
 * Trigger a new instance of a Workflow Builder workflow
 *
 * @remarks
 * This operation triggers a new instance of a specified Workflow Builder workflow. When invoked,
 * the workflow is started based on the provided input data, and the workflow instance
 * begins executing according to its defined logic and configuration.
 *
 * The request requires an `instance_name` and any input data necessary to start the workflow,
 * as described by the workflow's `trigger_input_schema`. The `instance_name` is a user-defined
 * label for tracking the workflow run, while the input data fields should match the schema defined
 * in the workflow.
 *
 * The operation is event-driven and typically triggered by an external HTTP event or system call,
 * allowing for the automatic execution of complex processes that span multiple systems or components.
 *
 * Upon successful execution, the response returns the unique identifier (`id`) for the newly
 * created workflow instance, along with a URL (`workflow_instance_url`) that can be used to
 * interact with or track the running instance.
 *
 * ### Use Cases:
 * - Automating user registration workflows where input fields like `name` and `email` are provided.
 * - Processing financial transactions where details such as `amount` and `currency` are required.
 * - Sending notifications based on user interactions in other systems.
 *
 * ### Key Features:
 * - **Automated Execution**: Once triggered, the workflow runs until a step requires manual intervention.
 * - **Input-Driven**: Workflow execution is based on the provided input data, which is validated
 *   against the workflow's input schema.
 * - **Real-Time Triggering**: Designed to be invoked as part of an event-driven architecture,
 *   allowing for workflows to respond to external events.
 * - **Tracking and Interaction**: The response includes a URL that allows users to check the status
 *   of the workflow instance or take further actions while it runs.
 *
 * If set, this operation will use {@link Security.accessToken} from the global security.
 */
export declare function workflowBuilderWorkflowsTriggerWorkflow(client: IamClientCore, request: operations.TriggerWorkflowRequest, options?: RequestOptions): APIPromise<Result<components.TriggerWorkflowSuccess, errors.ErrDetails | IamClientError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError>>;
//# sourceMappingURL=workflowBuilderWorkflowsTriggerWorkflow.d.ts.map