import { TabEntityContext } from '../tab/tab-entity-context.js';

/**
 *
 * An interface representing TaskModuleRequest.
 * Task module invoke request value payload
 *
 */
type TaskModuleRequest = {
    /**
     * @member {any} [data] User input data. Free payload with key-value pairs.
     */
    data?: any;
    /**
     * @member {TaskModuleRequestContext} [context] Current user context, i.e.,
     * the current theme
     */
    context?: TaskModuleRequestContext;
    /**
     * @member {TabEntityContext} [tabContext] Tab request context.
     */
    tabContext?: TabEntityContext;
};
/**
 *
 * An interface representing TaskModuleRequestContext.
 * Current user context, i.e., the current theme
 *
 */
type TaskModuleRequestContext = {
    /**
     * @member {string} [theme]
     */
    theme?: string;
};

export type { TaskModuleRequest, TaskModuleRequestContext };
