37 lines
1.2 KiB
TypeScript
37 lines
1.2 KiB
TypeScript
import { BoardCreationResult, BoardPayload, Role } from '../types/index.js';
|
|
export declare class BoardService {
|
|
/**
|
|
* Create a new Kanban board with admin and member keys and standard agile columns with WIP limits.
|
|
*/
|
|
static createBoard(title?: string): Promise<BoardCreationResult>;
|
|
/**
|
|
* Authenticate a key against a board ID. Returns the role ('admin' | 'member') or null if invalid.
|
|
*/
|
|
static authenticateKey(boardId: string, key: string): Promise<{
|
|
role: Role;
|
|
board: any;
|
|
} | null>;
|
|
/**
|
|
* Fetch full board data with columns and tickets ordered properly.
|
|
*/
|
|
static getBoardDetails(boardId: string, role: Role): Promise<BoardPayload | null>;
|
|
/**
|
|
* Regenerate member key (Key Rotation). Only superadmin can perform this.
|
|
*/
|
|
static rotateMemberKey(boardId: string): Promise<{
|
|
newMemberKey: string;
|
|
memberUrlFragment: string;
|
|
}>;
|
|
/**
|
|
* Delete a board. Only superadmin can perform this.
|
|
*/
|
|
static deleteBoard(boardId: string): Promise<void>;
|
|
/**
|
|
* Update board title & settings.
|
|
*/
|
|
static updateBoard(boardId: string, updates: {
|
|
title?: string;
|
|
autoMoveStale?: boolean;
|
|
}): Promise<void>;
|
|
}
|