import { ISubmitAction, SubmitAction, SubmitActionOptions } from '../../core.js';
import { MSTeamsData } from './ms-teams-data.js';

type TaskFetchActionOptions = SubmitActionOptions & {
    data: MSTeamsData<ITaskFetchData>;
};
type TaskFetchDataValues = {
    [key: string]: any;
} & {
    /** type is special so we shouldn't allow overriding it */
    type?: never;
};
/**
 * @deprecated This type is deprecated. Please use {@link ITaskFetchSubmitActionData} instead. This will be removed in a future version of the SDK.
 */
interface ITaskFetchAction extends ISubmitAction {
    /**
     * Initial data that input fields will be combined with. These are essentially ‘hidden’ properties.
     */
    data: MSTeamsData<ITaskFetchData>;
}
/**
 * @deprecated This class is deprecated. Please use {@link TaskFetchSubmitActionData} instead. This will be removed in a future version of the SDK.
 */
declare class TaskFetchAction extends SubmitAction implements ITaskFetchAction {
    /**
     * Initial data that input fields will be combined with. These are essentially ‘hidden’ properties.
     */
    data: MSTeamsData<ITaskFetchData>;
    constructor(value?: TaskFetchDataValues, options?: SubmitActionOptions);
    static from(options: TaskFetchActionOptions): TaskFetchAction;
    withData(value: MSTeamsData<ITaskFetchData>): this;
    withValue(value: TaskFetchDataValues): this;
}
/**
 * @deprecated This type is deprecated. Please use {@link ITaskFetchSubmitActionData} instead. This will be removed in a future version of the SDK.
 */
interface ITaskFetchData {
    type: 'task/fetch';
}
/**
 * @deprecated This class is deprecated. Please use {@link TaskFetchSubmitActionData} instead. This will be removed in a future version of the SDK.
 */
declare class TaskFetchData implements MSTeamsData<ITaskFetchData> {
    msteams: {
        type: "task/fetch";
    };
    constructor(data?: TaskFetchDataValues);
}

export { type ITaskFetchAction, type ITaskFetchData, TaskFetchAction, type TaskFetchActionOptions, TaskFetchData, type TaskFetchDataValues };
