import { type Account } from "../account.js";
import { type ReportCategory } from "../report.js";
import { type Rule } from "../rule.js";
import { type Status } from "../status.js";
/**
 * Admin-level information about a filed report.
 * @see https://docs.joinmastodon.org/entities/admin-report/
 */
export interface Report {
    /** The ID of the report in the database. */
    id: string;
    /** The action taken to resolve this report. */
    actionTaken: boolean;
    /** When an action was taken, if this report is currently resolved. */
    actionTakenAt?: string | null;
    /** The category under which the report is classified */
    category: ReportCategory;
    /** An optional reason for reporting. */
    comment: string;
    /** Whether a report was forwarded to a remote instance. */
    forwarded: boolean;
    /** The time the report was filed. */
    createdAt: string;
    /** The time of last action on this report. */
    updatedAt: string;
    /** The account which filed the report. */
    account: Account;
    /** The account being reported. */
    targetAccount: Account;
    /** The account of the moderator assigned to this report. */
    assignedAccount?: Account | null;
    /** The action taken by the moderator who handled the report. */
    actionTakenByAccount: Account;
    /** Statuses attached to the report, for context. */
    statuses: Status[];
    /** Rules attached to the report, for context. */
    rules: Rule[];
}
