import * as Models from './models';
import * as Parameters from './parameters';
import { Client } from '../clients';
import { Callback } from '../types';
export declare class Actions {
    private client;
    constructor(client: Client);
    /** Get an Action */
    getAction<T = Models.Action>(parameters: Parameters.GetAction, callback: Callback<T>): Promise<void>;
    /** Get an Action */
    getAction<T = Models.Action>(parameters: Parameters.GetAction, callback?: never): Promise<T>;
    /** Update a specific Action. Only comment actions can be updated. Used to edit the content of a comment. */
    updateAction<T = unknown>(parameters: Parameters.UpdateAction, callback: Callback<T>): Promise<void>;
    /** Update a specific Action. Only comment actions can be updated. Used to edit the content of a comment. */
    updateAction<T = unknown>(parameters: Parameters.UpdateAction, callback?: never): Promise<T>;
    /** Delete a specific action. Only comment actions can be deleted. */
    deleteAction<T = unknown>(parameters: Parameters.DeleteAction, callback: Callback<T>): Promise<void>;
    /** Delete a specific action. Only comment actions can be deleted. */
    deleteAction<T = unknown>(parameters: Parameters.DeleteAction, callback?: never): Promise<T>;
    /** Get a specific property of an action */
    getActionField<T = Models.Action>(parameters: Parameters.GetActionField, callback: Callback<T>): Promise<void>;
    /** Get a specific property of an action */
    getActionField<T = Models.Action>(parameters: Parameters.GetActionField, callback?: never): Promise<T>;
    /** Get the Board for an Action */
    getActionBoard<T = Models.Board>(parameters: Parameters.GetActionBoard, callback: Callback<T>): Promise<void>;
    /** Get the Board for an Action */
    getActionBoard<T = Models.Board>(parameters: Parameters.GetActionBoard, callback?: never): Promise<T>;
    /** Get the card for an action */
    getActionCard<T = Models.Card>(parameters: Parameters.GetActionCard, callback: Callback<T>): Promise<void>;
    /** Get the card for an action */
    getActionCard<T = Models.Card>(parameters: Parameters.GetActionCard, callback?: never): Promise<T>;
    /** Get the List for an Action */
    getActionList<T = Models.List>(parameters: Parameters.GetActionList, callback: Callback<T>): Promise<void>;
    /** Get the List for an Action */
    getActionList<T = Models.List>(parameters: Parameters.GetActionList, callback?: never): Promise<T>;
    /** Gets the member of an action (not the creator) */
    getActionMember<T = Models.Member>(parameters: Parameters.GetActionMember, callback: Callback<T>): Promise<void>;
    /** Gets the member of an action (not the creator) */
    getActionMember<T = Models.Member>(parameters: Parameters.GetActionMember, callback?: never): Promise<T>;
    /** Get the Member who created the Action */
    getActionMemberCreator<T = Models.Member>(parameters: Parameters.GetActionMemberCreator, callback: Callback<T>): Promise<void>;
    /** Get the Member who created the Action */
    getActionMemberCreator<T = Models.Member>(parameters: Parameters.GetActionMemberCreator, callback?: never): Promise<T>;
    /** Get the Organization of an Action */
    getActionOrganization<T = Models.Organization>(parameters: Parameters.GetActionOrganization, callback: Callback<T>): Promise<void>;
    /** Get the Organization of an Action */
    getActionOrganization<T = Models.Organization>(parameters: Parameters.GetActionOrganization, callback?: never): Promise<T>;
    /** Update a comment action */
    updateActionText<T = unknown>(parameters: Parameters.UpdateActionText, callback: Callback<T>): Promise<void>;
    /** Update a comment action */
    updateActionText<T = unknown>(parameters: Parameters.UpdateActionText, callback?: never): Promise<T>;
    /** List reactions for an action */
    getActionReactions<T = unknown>(parameters: Parameters.GetActionReactions, callback: Callback<T>): Promise<void>;
    /** List reactions for an action */
    getActionReactions<T = unknown>(parameters: Parameters.GetActionReactions, callback?: never): Promise<T>;
    /** Adds a new reaction to an action */
    addActionReaction<T = unknown>(parameters: Parameters.AddActionReaction, callback: Callback<T>): Promise<void>;
    /** Adds a new reaction to an action */
    addActionReaction<T = unknown>(parameters: Parameters.AddActionReaction, callback?: never): Promise<T>;
    /** Get information for a reaction */
    getActionReaction<T = unknown>(parameters: Parameters.GetActionReaction, callback: Callback<T>): Promise<void>;
    /** Get information for a reaction */
    getActionReaction<T = unknown>(parameters: Parameters.GetActionReaction, callback?: never): Promise<T>;
    /** Deletes a reaction */
    deleteActionReaction<T = unknown>(parameters: Parameters.DeleteActionReaction, callback: Callback<T>): Promise<void>;
    /** Deletes a reaction */
    deleteActionReaction<T = unknown>(parameters: Parameters.DeleteActionReaction, callback?: never): Promise<T>;
    /** List a summary of all reactions for an action */
    getActionReactionSummary<T = unknown>(parameters: Parameters.GetActionReactionSummary, callback: Callback<T>): Promise<void>;
    /** List a summary of all reactions for an action */
    getActionReactionSummary<T = unknown>(parameters: Parameters.GetActionReactionSummary, callback?: never): Promise<T>;
}
