import * as z from "zod";
import { ClosedEnum } from "../types/enums.js";
import { Result as SafeParseResult } from "../types/fp.js";
import { SDKValidationError } from "./sdkvalidationerror.js";
/**
 * The user's version. Will either be unset or `northstar`.
 */
export declare const AuthUserLimitedVersion: {
    readonly Northstar: "northstar";
};
/**
 * The user's version. Will either be unset or `northstar`.
 */
export type AuthUserLimitedVersion = ClosedEnum<typeof AuthUserLimitedVersion>;
/**
 * A limited form of data for the currently authenticated User, due to the authentication token missing privileges to read the full User data.
 */
export type AuthUserLimited = {
    /**
     * Property indicating that this User data contains only limited information, due to the authentication token missing privileges to read the full User data. Re-login with email, GitHub, GitLab or Bitbucket in order to upgrade the authentication token with the necessary privileges.
     */
    limited: boolean;
    /**
     * The User's unique identifier.
     */
    id: string;
    /**
     * Email address associated with the User account.
     */
    email: string;
    /**
     * Name associated with the User account, or `null` if none has been provided.
     */
    name: string | null;
    /**
     * Unique username associated with the User account.
     */
    username: string;
    /**
     * SHA1 hash of the avatar for the User account. Can be used in conjuction with the ... endpoint to retrieve the avatar image.
     */
    avatar: string | null;
    /**
     * The user's default team. Only applies if the user's `version` is `'northstar'`.
     */
    defaultTeamId: string | null;
    /**
     * The user's version. Will either be unset or `northstar`.
     */
    version: AuthUserLimitedVersion | null;
};
/** @internal */
export declare const AuthUserLimitedVersion$inboundSchema: z.ZodNativeEnum<typeof AuthUserLimitedVersion>;
/** @internal */
export declare const AuthUserLimitedVersion$outboundSchema: z.ZodNativeEnum<typeof AuthUserLimitedVersion>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AuthUserLimitedVersion$ {
    /** @deprecated use `AuthUserLimitedVersion$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Northstar: "northstar";
    }>;
    /** @deprecated use `AuthUserLimitedVersion$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Northstar: "northstar";
    }>;
}
/** @internal */
export declare const AuthUserLimited$inboundSchema: z.ZodType<AuthUserLimited, z.ZodTypeDef, unknown>;
/** @internal */
export type AuthUserLimited$Outbound = {
    limited: boolean;
    id: string;
    email: string;
    name: string | null;
    username: string;
    avatar: string | null;
    defaultTeamId: string | null;
    version: string | null;
};
/** @internal */
export declare const AuthUserLimited$outboundSchema: z.ZodType<AuthUserLimited$Outbound, z.ZodTypeDef, AuthUserLimited>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AuthUserLimited$ {
    /** @deprecated use `AuthUserLimited$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AuthUserLimited, z.ZodTypeDef, unknown>;
    /** @deprecated use `AuthUserLimited$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AuthUserLimited$Outbound, z.ZodTypeDef, AuthUserLimited>;
    /** @deprecated use `AuthUserLimited$Outbound` instead. */
    type Outbound = AuthUserLimited$Outbound;
}
export declare function authUserLimitedToJSON(authUserLimited: AuthUserLimited): string;
export declare function authUserLimitedFromJSON(jsonString: string): SafeParseResult<AuthUserLimited, SDKValidationError>;
//# sourceMappingURL=authuserlimited.d.ts.map