export interface IQuotaSnapshotData {
    readonly entitlement: number;
    readonly overage_count: number;
    readonly overage_permitted: boolean;
    readonly percent_remaining: number;
    readonly remaining: number;
    readonly unlimited: boolean;
}
export interface ILegacyQuotaSnapshotData {
    readonly limited_user_quotas?: {
        readonly chat: number;
        readonly completions: number;
    };
    readonly monthly_quotas?: {
        readonly chat: number;
        readonly completions: number;
    };
}
export interface IEntitlementsData extends ILegacyQuotaSnapshotData {
    readonly access_type_sku: string;
    readonly assigned_date: string;
    readonly can_signup_for_limited: boolean;
    readonly copilot_plan: string;
    readonly organization_login_list: string[];
    readonly analytics_tracking_id: string;
    readonly limited_user_reset_date?: string;
    readonly quota_reset_date?: string;
    readonly quota_reset_date_utc?: string;
    readonly quota_snapshots?: {
        chat?: IQuotaSnapshotData;
        completions?: IQuotaSnapshotData;
        premium_interactions?: IQuotaSnapshotData;
    };
}
export interface IPolicyData {
    readonly mcp?: boolean;
    readonly chat_preview_features_enabled?: boolean;
    readonly chat_agent_enabled?: boolean;
    readonly mcpRegistryUrl?: string;
    readonly mcpAccess?: "allow_all" | "registry_only";
}
export interface ICopilotTokenInfo {
    readonly sn?: string;
    readonly fcv1?: string;
}
export interface IDefaultAccountAuthenticationProvider {
    readonly id: string;
    readonly name: string;
    readonly enterprise: boolean;
}
export interface IDefaultAccount {
    readonly authenticationProvider: IDefaultAccountAuthenticationProvider;
    readonly accountName: string;
    readonly sessionId: string;
    readonly enterprise: boolean;
    readonly entitlementsData?: IEntitlementsData | null;
}
