import { ApiBase } from './base';
export declare enum EnumBoardState {
    follow = 1,
    unfollow = 0,
    grantPermission = 1,
    revokePermission = 0
}
export interface BoardUserAttrs {
    userUuid: string;
    userName: string;
    role: string;
    grantPermission: number;
}
export interface BoardInfoResponse {
    info: {
        boardId: string;
        boardToken: string;
    };
    state: {
        follow: number;
        grantUsers: BoardUserAttrs[];
    };
}
export declare class AgoraBoardApi extends ApiBase {
    private roomUuid;
    constructor(params: {
        userToken: string;
        roomUuid: string;
        rtmUid: string;
        rtmToken: string;
        sdkDomain: string;
        appId: string;
    });
    getBoardInfo(roomUuid: string): Promise<BoardInfoResponse>;
    getCurrentBoardInfo(): Promise<BoardInfoResponse>;
    getBoardRoomInfo(roomUuid: string): Promise<any>;
    updateBoardUserState(roomUuid: string, userUuid: string, grantPermission: number): Promise<any>;
    updateBoardRoomState(roomUuid: string, follow: number): Promise<any>;
    updateCurrentBoardUserState(userUuid: string, grantPermission: number): Promise<any>;
    updateCurrentBoardState(follow: number): Promise<any>;
}
