40 lines
1.4 KiB
TypeScript
40 lines
1.4 KiB
TypeScript
import { Request, Response } from 'express';
|
|
import { AuthenticatedRequest } from '../middleware/auth.js';
|
|
export declare class BoardController {
|
|
/**
|
|
* POST /api/boards
|
|
* Create a new board with rate-limiting.
|
|
*/
|
|
static createBoard(req: Request, res: Response): Promise<void>;
|
|
/**
|
|
* GET /api/boards/:id
|
|
* Fetch board data using authorization key.
|
|
*/
|
|
static getBoard(req: AuthenticatedRequest, res: Response): Promise<void>;
|
|
/**
|
|
* GET /api/boards/:id/activity
|
|
* Fetch recent activity / movement logs for board.
|
|
*/
|
|
static getBoardActivity(req: AuthenticatedRequest, res: Response): Promise<void>;
|
|
/**
|
|
* GET /api/boards/:id/tickets/:ticketId/activity
|
|
* Fetch movement logs for specific ticket.
|
|
*/
|
|
static getTicketActivity(req: AuthenticatedRequest, res: Response): Promise<void>;
|
|
/**
|
|
* POST /api/boards/:id/rotate-member-key
|
|
* Rotate member key (Admin only).
|
|
*/
|
|
static rotateMemberKey(req: AuthenticatedRequest, res: Response): Promise<void>;
|
|
/**
|
|
* DELETE /api/boards/:id
|
|
* Delete board (Admin only).
|
|
*/
|
|
static deleteBoard(req: AuthenticatedRequest, res: Response): Promise<void>;
|
|
/**
|
|
* PATCH /api/boards/:id
|
|
* Update board title (Admin only).
|
|
*/
|
|
static updateBoard(req: AuthenticatedRequest, res: Response): Promise<void>;
|
|
}
|