import { DevCycleOptions, DevCycleUser, DVCCustomDataJSON } from './types';
type StaticData = Pick<DVCPopulatedUser, 'createdDate' | 'platform' | 'platformVersion' | 'deviceModel' | 'sdkType' | 'sdkVersion' | 'sdkPlatform'>;
export declare class DVCPopulatedUser implements DevCycleUser {
    readonly isAnonymous: boolean;
    readonly user_id: string;
    readonly email?: string;
    readonly name?: string;
    readonly language?: string;
    readonly country?: string;
    readonly appVersion?: string;
    readonly appBuild?: number;
    readonly customData?: DVCCustomDataJSON;
    readonly privateCustomData?: DVCCustomDataJSON;
    readonly lastSeenDate: Date;
    readonly createdDate: Date;
    readonly platform: string;
    readonly platformVersion: string;
    readonly deviceModel: string;
    readonly sdkType: 'client';
    readonly sdkVersion: string;
    readonly sdkPlatform?: string;
    constructor(user: DevCycleUser, options: DevCycleOptions, staticData?: StaticData, anonymousUserId?: string, headerUserAgent?: string);
    getStaticData(): StaticData;
    updateUser(user: DevCycleUser, options: DevCycleOptions): DVCPopulatedUser;
}
export {};
