@cutls/megalodon
Version:
Mastodon, Pleroma, Misskey API client for node.js and browser
63 lines (62 loc) • 2.04 kB
TypeScript
import { Account } from './account.js';
import { Application } from './application.js';
import { Emoji } from './emoji.js';
import { Attachment } from './attachment.js';
import { Mention } from './mention.js';
import { Reaction } from './reaction.js';
import { Card } from './card.js';
import { Poll } from './poll.js';
export type Status = {
id: string;
uri: string;
url?: string;
account: Account;
in_reply_to_id: string | null;
in_reply_to_account_id: string | null;
reblog: Status | null;
content: string;
plain_content: string | null;
created_at: string;
edited_at: string | null;
emojis: Emoji[];
replies_count: number;
reblogs_count: number;
favourites_count: number;
reblogged: boolean | null;
favourited: boolean | null;
muted: boolean | null;
sensitive: boolean;
spoiler_text: string;
visibility: StatusVisibility;
media_attachments: Array<Attachment>;
mentions: Array<Mention>;
tags: Array<StatusTag>;
card: Card | null;
poll: Poll | null;
application: Application | null;
language: string | null;
pinned: boolean | null;
emoji_reactions: Array<Reaction>;
quote: boolean;
quotes_count?: number;
quote_approval?: QuoteApproval;
quote_status?: Status | null;
quote_status_state?: QuoteState;
bookmarked: boolean;
_integrated_isLocal?: boolean;
};
type QuoteState1 = 'pending' | 'accepted' | 'rejected' | 'revoked' | 'deleted';
type QuoteState2 = 'unauthorized' | 'blocked_account' | 'blocked_domain' | 'muted_account';
type QuoteState = QuoteState1 | QuoteState2;
export type StatusTag = {
name: string;
url: string;
};
export type StatusVisibility = 'public' | 'unlisted' | 'private' | 'direct' | 'local';
type QuoteApprovalPolicy = 'public' | 'followers' | 'following' | 'unsupported_policy';
export type QuoteApproval = {
automatic: QuoteApprovalPolicy[];
manual: QuoteApprovalPolicy[];
current_user: 'automatic' | 'manual' | 'denied' | 'unknown';
};
export {};