import { apiDelete, apiGet, apiPost } from '@/lib/http' import type { ClaimDetailData } from '@/types/claim' import type { TencentLoginType } from '@/types/tencent/session' export function fetchClaimDetail(token: string) { return apiGet(`/api/v1/claim/${token}`) } export function createClaimSession( token: string, loginType: TencentLoginType, options: { forceRecreate?: boolean } = {}, ) { return apiPost(`/api/v1/claim/${token}/session`, { loginType, forceRecreate: Boolean(options.forceRecreate), }) } export function fetchClaimSessionSummary(token: string) { return apiGet(`/api/v1/claim/${token}/session/summary`) } export function refreshClaimSession(token: string) { return apiPost(`/api/v1/claim/${token}/session/refresh`, {}) } export function removeClaimSession(token: string) { return apiDelete(`/api/v1/claim/${token}/session`) } export function confirmClaimRole(token: string) { return apiPost(`/api/v1/claim/${token}/confirm-role`, { confirm: true }) } export function redeemClaim(token: string) { return apiPost(`/api/v1/claim/${token}/redeem`, {}) }