import { PeiJian } from '../shared/protocols/peijian/PtlGetList';
import { CollectionDxlt } from './collection_dxlt';
import { CollectionEmail } from './collection_email';
import { CollectionEquip } from './collection_equip';
import { CollectionFightLog } from './collection_fightLog';
import { CollectionGBTX } from './collection_gbtx';
import { CollectionHero } from './collection_hero';
import { CollectionItem } from './collection_item';
import { CollectionJJC } from './collection_jjc';
import { CollectionShiwu } from './collection_shiwu';
import { CollectionShop } from './collection_shop';
import { CollectionTanXian } from './collection_tanxian';
import { CollectionUser } from './collection_user';
import {payLog} from '../shared/protocols/pay/PtlGetList';
import { rankInfo } from '../shared/protocols/type';
import { CollectionFriend } from '../module/collection_friend';
import { CollectionGongHui } from '../module/collection_gonghui';



export type sortEd = {
    score: number,
    value: string
}

// export type sortEd = sortEd;

/**一层嵌套对象 */
export type RedisCollections1 = {
    user: CollectionUser;
    gbtx: CollectionGBTX;
    tanxian: Omit<CollectionTanXian, 'fastGuaJiNum'>;
    dxlt: CollectionDxlt;
    jjc: CollectionJJC;
};

/**二层嵌套对象 */
export type RedisCollections2 = {
    item: CollectionItem;
    hero: CollectionHero;
    equip: CollectionEquip;
    shiwu: CollectionShiwu;
    shop: CollectionShop;
    email: CollectionEmail;
    peijian: PeiJian;
};

export type RedisCollectionsHkey1String = {
    "player:uids": string;
}

export type RedisCollectionsHkeyObj1 = {
    "player:payLog": k_v<payLog[]>
    "rank:jjc:data": rankInfo; // 竞技场单个玩家数据
    "friend:list": CollectionFriend;
    "gonghui:list": CollectionGongHui;
    "gonghui:isFightBoss": boolean;
}

export type RedisCollectionsSortedObj1 = {
    "rank:jjc:sort": sortEd | sortEd[]
}

// "rankjjc:sort": 
/**一层嵌套数组 */
export type RedisCollectionsArr1 = {
    chatPrivate: string;
};

/**二层嵌套数组 */
export type RedisCollectionsArr2 = {
    fightLog: CollectionFightLog;
};