import BaseController from "../controllers/BaseController";
import type { IWorkspace } from "../entities";
import * as interfaces from "../interfaces";
import { AddUserToWorkspaceParams, InviteMemberData, WorkspaceInputData, WorkspaceService } from "../services/WorkspaceService";
export default class WorkspaceController extends BaseController<IWorkspace> {
    service: WorkspaceService;
    constructor();
    /**
     * List of workspaces
     */
    read(queryParams?: interfaces.IGetQueryParams): Promise<interfaces.ResponseData>;
    create(body: WorkspaceInputData): Promise<interfaces.ResponseData>;
    update(body: Partial<WorkspaceInputData>, queryParams?: interfaces.IPostQueryParams): Promise<interfaces.ResponseData>;
    delete(queryParams?: interfaces.IDeleteQueryParams): Promise<interfaces.ResponseData>;
    inviteMember(data: InviteMemberData): Promise<interfaces.ResponseData>;
    addUser(data: AddUserToWorkspaceParams): Promise<interfaces.ResponseData>;
    /**
     * ======================= SERVICE ACCOUNT ======================
     */
    /**
     * Get Service Account list of a workspace
     */
    getServiceAccounts(queryParams?: {
        /**
         * ID of Service Account
         */
        id?: string;
    }): Promise<interfaces.ResponseData>;
    /**
     * ======================= API KEY USER ACCOUNT ======================
     */
    /**
     * Get Service Account list of a workspace
     */
    getApiKeyUsers(queryParams?: {
        /**
         * ID of API key account
         */
        id?: string;
    }): Promise<interfaces.ResponseData>;
    updatePackageWorkspace(data: {
        old_key: string;
        new_key: string;
    }): Promise<interfaces.ResponseData & interfaces.IResponsePagination>;
    isOwnerWorkspace(data: {
        userId: string;
        workspace_id: string;
    }): Promise<interfaces.ResponseData & interfaces.IResponsePagination>;
    testCloudStorage(): Promise<interfaces.ResponseData>;
}
//# sourceMappingURL=WorkspaceController.d.ts.map