import {
    BackendApiEndpoint,
    MagApiClient,
    MagApiError,
    MagApiErrorCode,
    Method,
    PaginatedResult,
} from "./be-api";

import {
    feEndpoints,
    FrontendApiEndpoint,
    FrontendApiEndpoints,
} from "./fe-api";

import { MagEventChannel, MagChannelState } from "./sse-listener";

import * as types from "./types";
import * as packed from "./packed";
import * as endpoints from "./endpoints";

export const notificationTypes: types.NotificationType[] = [
    "Follow",
    "FollowRequestReceived",
    "FollowRequestAccepted",
    "Mention",
    "Reply",
    "Renote",
    "Reaction",
    "Quote",
    "PollEnd",
    "App",
];

export {
    Method,
    BackendApiEndpoint,
    PaginatedResult,
    MagApiError,
    MagApiClient,
    MagApiErrorCode,
    feEndpoints,
    FrontendApiEndpoint,
    FrontendApiEndpoints,
    MagEventChannel,
    MagChannelState,
    types,
    packed,
    endpoints,
};
