import api, { apiRequestPost, getLinks } from 'flavours/glitch/api'; import type { ApiStatusJSON } from 'flavours/glitch/api_types/statuses'; import type { StatusVisibility } from 'flavours/glitch/models/status'; export const apiReblog = (statusId: string, visibility: StatusVisibility) => apiRequestPost<{ reblog: ApiStatusJSON }>(`v1/statuses/${statusId}/reblog`, { visibility, }); export const apiUnreblog = (statusId: string) => apiRequestPost(`v1/statuses/${statusId}/unreblog`); export const apiRevokeQuote = (quotedStatusId: string, statusId: string) => apiRequestPost( `v1/statuses/${quotedStatusId}/quotes/${statusId}/revoke`, ); export const apiGetQuotes = async (statusId: string, url?: string) => { const response = await api().request({ method: 'GET', url: url ?? `/api/v1/statuses/${statusId}/quotes`, }); return { statuses: response.data, links: getLinks(response), }; };