/**
 * @license
 * Copyright 2025 Vybestack LLC
 * SPDX-License-Identifier: Apache-2.0
 */
import { MessageType } from '../types.js';
import { AppState } from '../reducers/appReducer.js';
import type { Profile } from '@vybestack/llxprt-code-core';
import type { ProfileListItem } from '../components/ProfileListDialog.js';
interface UseProfileManagementParams {
    addMessage: (msg: {
        type: MessageType;
        content: string;
        timestamp: Date;
    }) => void;
    appState: AppState;
}
export declare const useProfileManagement: ({ addMessage, appState, }: UseProfileManagementParams) => {
    showListDialog: boolean;
    showDetailDialog: boolean;
    showEditorDialog: boolean;
    profiles: ProfileListItem[];
    isLoading: boolean;
    selectedProfileName: string | null;
    selectedProfile: Profile | null;
    defaultProfileName: string | null;
    activeProfileName: string | null;
    profileError: string | null;
    openListDialog: () => Promise<void>;
    closeListDialog: () => void;
    viewProfileDetail: (profileName: string, openedDirectly?: boolean) => Promise<void>;
    closeDetailDialog: () => Promise<void>;
    loadProfile: (profileName: string) => Promise<void>;
    deleteProfile: (profileName: string) => Promise<void>;
    setDefault: (profileName: string) => Promise<void>;
    openEditor: (profileName: string, openedDirectly?: boolean) => Promise<void>;
    closeEditor: () => Promise<void>;
    saveProfile: (profileName: string, updatedProfile: unknown) => Promise<void>;
};
export {};
