import React from "react";
import { AgentApiService } from "../api-service";
import { CurrentUser } from "../models/CurrentUser";
import { CurrentApp } from "../models/CurrentApp";
import { FeatureFlagsTitles } from "../models/FeatureFlagsTitles";
import { UserStatus } from "../models/UsageStatus";
export type AgentContextValue = {
    agentApiService: AgentApiService | null;
    showAgentPanel: () => void;
    hideAgentPanel: () => void;
    toggleAgentPanelVisibility: () => void;
    isAgentPanelOpen: boolean;
    currentConversationId: string | null;
    updateCurrentConversationId: (conversationId: string | null) => void;
    lastSentUserMessage: string;
    updateLastSentUserMessage: (message: string) => void;
    usageStatus: UserStatus;
    updateUsageStatus: (status: UserStatus) => void;
    userHasAgentPerms: boolean;
    updateUserHasAgentPerms: (value: boolean) => void;
    isInPreprod: boolean;
    updateIsInPreprod: (preprod: boolean) => void;
    currentUser: CurrentUser | null;
    flags: FeatureFlagsTitles | null;
    isInCustomerView: boolean;
    token: string | null;
    env: string;
    currentApp: CurrentApp | null;
};
export declare const AgentContext: React.Context<AgentContextValue>;
export declare const useAgentContext: () => AgentContextValue;
