import { DuetInfo } from '.';
export interface ItemInfos {
    id: string;
    text: string;
    createTime: number;
    authorId: string;
    musicId: string;
    covers: string[];
    coversOrigin: string[];
    coversDynamic: string[];
    video: {
        urls: string[];
        videoMeta: {
            width: number;
            height: number;
            ratio: number;
            duration: number;
        };
    };
    diggCount: number;
    shareCount: number;
    playCount: number;
    commentCount: number;
    isOriginal: boolean;
    isOfficial: boolean;
    isActivityItem: boolean;
    warnInfo: any[];
}
export interface AuthorInfos {
    secUid: string;
    userId: string;
    uniqueId: string;
    nickName: string;
    signature: string;
    verified: boolean;
    covers: string[];
    coversMedium: string[];
    coversLarger: string[];
    isSecret: boolean;
}
export interface MusicInfos {
    musicId: string;
    musicName: string;
    authorName: string;
    original: boolean;
    playUrl: string[];
    covers: string[];
    coversMedium: string[];
    coversLarger: string[];
    posts: number;
}
export interface Challenge {
    challengeId: string;
    challengeName: string;
    isCommerce: boolean;
    text: string;
    covers: string[];
    coversMedium: string[];
    coversLarger: string[];
    posts: number;
    views: string;
    splitTitle: string;
}
export interface AuthorStats {
    followingCount: number;
    followerCount: number;
    heartCount: number;
    videoCount: number;
    diggCount: number;
}
export interface Item {
    itemInfos: ItemInfos;
    authorInfos: AuthorInfos;
    musicInfos: MusicInfos;
    challengeInfoList: Challenge[];
    authorStats: AuthorStats;
}
export interface RequestQuery {
    id?: string;
    musicID?: string;
    secUid?: string;
    shareUid?: string;
    type?: number;
    sourceType?: number;
    count?: number;
    priority_region?: string;
    lang?: string;
    referer?: string;
    root_referer?: string;
    minCursor?: number;
    maxCursor?: number;
    language?: string;
    verifyFp?: string;
    device_id?: string;
    region?: string;
    'X-Bogus'?: string;
    msToken?: string;
    challengeID?: string;
    insertedItemID?: string;
    noUser?: number;
    fromPage?: string;
    from_page?: string;
    cursor?: number;
    aid?: number;
    itemID?: number;
    appId?: number;
    app_language?: string;
    is_page_visible?: boolean;
    user_agent?: string;
    screen_width?: number;
    screen_height?: number;
    browser_language?: string;
    browser_platform?: string;
    isIOS?: boolean;
    os?: string;
    isMobile?: boolean;
    isAndroid?: boolean;
    cookie_enabled?: boolean;
    history_len?: number;
    focus_state?: boolean;
    is_fullscreen?: boolean;
    appType?: string;
    browser_online?: boolean;
    browser_version?: string;
    browser_name?: string;
    validUniqueId?: string;
    uniqueId?: string;
    isUniqueId?: boolean;
    OS?: string;
    app_name?: string;
    device_platform?: string;
    _signature?: string;
}
export interface VideoProps {
    props: {
        pageProps: {
            videoData: Item;
        };
    };
}
export interface ItemListData {
    statusCode: number;
    items: FeedItems[];
    itemList: FeedItems[];
    hasMore: boolean;
    maxCursor: string;
    minCursor: string;
    cursor: string;
}
export interface VideoMetadata {
    statusCode: number;
    itemInfo: {
        itemStruct: FeedItems;
    };
}
export interface FeedItems {
    id: string;
    desc: string;
    createTime: number;
    video: {
        id: string;
        height: number;
        width: number;
        duration: number;
        ratio: string;
        cover: string;
        originCover: string;
        dynamicCover: string;
        playAddr: string;
        downloadAddr: string;
        shareCover: string[];
    };
    author: {
        id: string;
        uniqueId: string;
        nickname: string;
        avatarThumb: string;
        avatarMedium: string;
        avatarLarger: string;
        signature: string;
        verified: boolean;
        secUid: string;
        relation: number;
        openFavorite: boolean;
        secret: boolean;
    };
    music: {
        id: string;
        title: string;
        playUrl: string;
        coverThumb: string;
        coverMedium: string;
        coverLarge: string;
        authorName: string;
        original: boolean;
        duration: number;
        album: string;
    };
    challenges: {
        id: string;
        title: string;
        desc: string;
        profileThumb: string;
        profileMedium: string;
        profileLarger: string;
        coverThumb: string;
        coverMedium: string;
        coverLarger: string;
    }[];
    stats: {
        diggCount: number;
        shareCount: number;
        commentCount: number;
        playCount: number;
    };
    originalItem: boolean;
    officalItem: boolean;
    textExtra: {
        awemeId: string;
        start: number;
        end: number;
        hashtagName: string;
        hashtagId: string;
        type: number;
        userId: string;
        isCommerce: boolean;
    }[];
    secret: boolean;
    forFriend: boolean;
    digged: boolean;
    itemCommentStatus: number;
    showNotPass: boolean;
    vl1: boolean;
    authorStats: {
        followingCount: number;
        followerCount: number;
        heartCount: number;
        videoCount: number;
        diggCount: number;
    };
    duetEnabled: boolean;
    stitchEnabled: boolean;
    duetInfo: DuetInfo;
    effectStickers: {
        name: string;
        ID: string;
    }[];
}
export interface TikTokMetadata {
    statusCode: number;
    userInfo: UserMetadata;
    challengeInfo: HashtagMetadata;
    musicInfo: MusicMetadata;
}
export interface MusicMetadata {
    music: {
        id: string;
        title: string;
        playUrl: string;
        coverThumb: string;
        coverMedium: string;
        coverLarge: string;
        authorName: string;
        original: boolean;
        playToken: string;
        keyToken: string;
        audioURLWithCookie: boolean;
        private: boolean;
        duration: number;
        album: string;
    };
    author: {
        id: string;
        uniqueId: string;
        nickname: string;
        avatarThumb: string;
        avatarMedium: string;
        avatarLarger: string;
        signature: string;
        verified: boolean;
        secUid: string;
        secret: boolean;
        ftc: boolean;
        relation: number;
        openFavorite: boolean;
        commentSetting: number;
        duetSetting: number;
        stitchSetting: number;
        privateAccount: boolean;
    };
    stats: {
        videoCount: number;
    };
    shareMeta: {
        title: string;
        desc: string;
    };
}
export interface UserMetadata {
    user: {
        id: string;
        uniqueId: string;
        nickname: string;
        avatarThumb: string;
        avatarMedium: string;
        avatarLarger: string;
        signature: string;
        verified: boolean;
        secUid: string;
        secret: boolean;
        ftc: boolean;
        relation: number;
        openFavorite: boolean;
        commentSetting: number;
        duetSetting: number;
        stitchSetting: number;
        privateAccount: boolean;
    };
    stats: {
        followingCount: number;
        followerCount: number;
        heartCount: number;
        videoCount: number;
        diggCount: number;
        heart: number;
    };
    shareMeta: {
        title: string;
        desc: string;
    };
}
export interface HashtagMetadata {
    challenge: {
        id: string;
        title: string;
        desc: string;
        profileThumb: string;
        profileMedium: string;
        profileLarger: string;
        coverThumb: string;
        coverMedium: string;
        coverLarger: string;
        isCommerce: boolean;
    };
    stats: {
        videoCount: number;
        viewCount: number;
    };
}
export interface WebHtmlUserMetadata {
    props: {
        pageProps: {
            userInfo: UserMetadata;
        };
    };
}
