import * as Core from 'cloudflare/core';
import { APIResource } from 'cloudflare/resource';
import * as LastSeenIdentityAPI from 'cloudflare/resources/zero-trust/access/users/last-seen-identity';
export declare class LastSeenIdentity extends APIResource {
    /**
     * Get last seen identity for a single user.
     */
    get(identifier: string, id: string, options?: Core.RequestOptions): Core.APIPromise<AccessIdentity>;
}
export interface AccessIdentity {
    account_id?: string;
    auth_status?: string;
    common_name?: string;
    device_id?: string;
    device_sessions?: Record<string, AccessIdentity.DeviceSessions>;
    devicePosture?: Record<string, AccessIdentity.DevicePosture>;
    email?: string;
    geo?: AccessIdentity.Geo;
    iat?: number;
    idp?: AccessIdentity.Idp;
    ip?: string;
    is_gateway?: boolean;
    is_warp?: boolean;
    mtls_auth?: AccessIdentity.MTLSAuth;
    service_token_id?: string;
    service_token_status?: boolean;
    user_uuid?: string;
    version?: number;
}
export declare namespace AccessIdentity {
    interface DeviceSessions {
        last_authenticated?: number;
    }
    interface DevicePosture {
        id?: string;
        check?: DevicePosture.Check;
        data?: unknown;
        description?: string;
        error?: string;
        rule_name?: string;
        success?: boolean;
        timestamp?: string;
        type?: string;
    }
    namespace DevicePosture {
        interface Check {
            exists?: boolean;
            path?: string;
        }
    }
    interface Geo {
        country?: string;
    }
    interface Idp {
        id?: string;
        type?: string;
    }
    interface MTLSAuth {
        auth_status?: string;
        cert_issuer_dn?: string;
        cert_issuer_ski?: string;
        cert_presented?: boolean;
        cert_serial?: string;
    }
}
export declare namespace LastSeenIdentity {
    export import AccessIdentity = LastSeenIdentityAPI.AccessIdentity;
}
//# sourceMappingURL=last-seen-identity.d.ts.map