import { ContactGender } from 'wechaty-puppet';
import { ContactOperationBitVal, ContactOperationCmdId, GrpcSelfAvatarType, PadplusMessageType, PadplusRoomMemberFlag } from './padplus-enums';
export interface GrpcQrCode {
    qrcodeId: string;
    qrcode: string;
}
export interface GrpcQrCodeStatus {
    head_url: string;
    nick_name: string;
    status: number;
    user_name: string;
}
export interface GrpcQrCodeLogin {
    alias: string;
    headImgUrl: string;
    nickName: string;
    status: number;
    uin: string;
    userName: string;
    verifyFlag: string;
}
export interface GrpcMessagePayload {
    AppMsgType?: number;
    Content: string;
    CreateTime: number;
    fileName?: string;
    FileName?: string;
    fromMemberNickName?: string;
    FromMemberNickName?: string;
    FromMemberUserName?: string;
    fromMemberUserName?: string;
    FromUserName: string;
    ImgBuf?: string;
    ImgStatus: number;
    L1MsgType: number;
    MsgId: string;
    MsgSource: string;
    msgSourceCd: number;
    MsgType: number;
    NewMsgId: number;
    PushContent: string;
    Status: number;
    ToUserName: string;
    Uin: string;
    Url?: string;
    url?: string;
    wechatUserName: string;
}
export interface GrpcSelfInfoPayload {
    alias: string;
    bindUin: string;
    msgType: PadplusMessageType;
    signature: string;
    userName: string;
    nickName: string;
    sex: ContactGender;
    province: string;
    city: string;
    bindEmail: string;
    bindMobile: string;
}
export interface GrpcSelfAvatarPayload {
    msgType: PadplusMessageType;
    imgType: GrpcSelfAvatarType;
    imgLen: number;
    imgBuf: string;
    imgMd5: string;
    bigHeadImgUrl: string;
    smallHeadImgUrl: string;
}
export interface GrpcDeletedPayload {
    msgType: PadplusMessageType;
    userName: string;
}
export declare type GrpcSyncMessagePayload = GrpcMessagePayload | GrpcRoomRawPayload | GrpcSelfInfoPayload | GrpcSelfAvatarPayload | GrpcDeletedPayload;
export interface GrpcRoomRawPayload {
    alias: string;
    bigHeadImgUrl: string;
    chatRoomOwner: string;
    chatroomVersion: number;
    contactType: number;
    encryptUsername: string;
    extInfo: string;
    extInfoExt: string;
    labelLists: string;
    msgType: PadplusMessageType;
    nickName: string;
    smallHeadImgUrl: string;
    ticket: string;
    userName: string;
    verifyFlag: number;
}
export interface GrpcRoomMemberRawPayload {
    chatroomUsername: string;
    serverVersion: number;
    memberDetails: GrpcRoomMemberDetail[] | null;
}
export interface GrpcRoomMemberDetail {
    userName: string;
    nickName: string;
    displayName: string;
    bigHeadImgUrl: string;
    smallHeadImgUrl: string;
    chatroomMemberFlag: PadplusRoomMemberFlag;
    inviterUserName: string;
}
export interface GrpcContactOperationOption {
    cmdid: ContactOperationCmdId;
    userId: string;
    bitVal?: ContactOperationBitVal;
    remark?: string;
}
export interface GrpcCreateRoomMemberPayload {
    memberName: string;
    memberStatus: number;
}
export interface GrpcCreateRoomPayload {
    roomeid: string;
    members: GrpcCreateRoomMemberPayload[];
}
export interface GrpcGetMsgImageType {
    imageData: string;
}
export interface GrpcGetMsgVoiceType {
    voiceData: string;
}
export interface GrpcGetA8KeyType {
    url: string;
    xWechatKey: string;
    xWechatUin: string;
}
export interface GrpcGetContactQrcodePayload {
    qrcodeBuf: string;
    foterWording: string;
}
export interface GrpcGetCdnDnsPayload {
    dnsCdn: {
        ver: string;
        uin: string;
        ip: string;
        aesKey: string;
    };
    snsCdn: {
        ver: string;
        uin: string;
        ip: string;
        aesKey: string;
    };
    appCdn: {
        ver: string;
        uin: string;
        ip: string;
        aesKey: string;
    };
    clientVersion: number;
}
export declare enum GRPC_CODE {
    OK = 0,
    CANCELLED = 1,
    UNKNOWN = 2,
    INVALID_ARGUMENT = 3,
    DEADLINE_EXCEEDED = 4,
    NOT_FOUND = 5,
    ALREADY_EXISTS = 6,
    PERMISSION_DENIED = 7,
    UNAUTHENTICATED = 16,
    RESOURCE_EXHAUSTED = 8,
    FAILED_PRECONDITION = 9,
    ABORTED = 10,
    OUT_OF_RANGE = 11,
    UNIMPLEMENTED = 12,
    INTERNAL = 13,
    UNAVAILABLE = 14,
    DATA_LOSS = 15
}
//# sourceMappingURL=grpc-schemas.d.ts.map