export type IslandStatus = 'idle' | 'input' | 'loading' | 'done' | 'confirming';
export declare const useStatus: import('pinia').StoreDefinition<"guiiai-devtools-status", import('pinia')._UnwrapAll<Pick<{
    viewfinderEnabled: import('vue').Ref<boolean>;
    status: import('vue').Ref<IslandStatus>;
    panelOpen: import('vue').Ref<boolean>;
    promptText: import('vue').Ref<string>;
    isSignedIn: import('vue').Ref<boolean>;
    errorMessage: import('vue').Ref<string>;
    lastRejected: import('vue').Ref<boolean>;
}, "isSignedIn" | "viewfinderEnabled" | "status" | "panelOpen" | "promptText" | "errorMessage" | "lastRejected">>, Pick<{
    viewfinderEnabled: import('vue').Ref<boolean>;
    status: import('vue').Ref<IslandStatus>;
    panelOpen: import('vue').Ref<boolean>;
    promptText: import('vue').Ref<string>;
    isSignedIn: import('vue').Ref<boolean>;
    errorMessage: import('vue').Ref<string>;
    lastRejected: import('vue').Ref<boolean>;
}, never>, Pick<{
    viewfinderEnabled: import('vue').Ref<boolean>;
    status: import('vue').Ref<IslandStatus>;
    panelOpen: import('vue').Ref<boolean>;
    promptText: import('vue').Ref<string>;
    isSignedIn: import('vue').Ref<boolean>;
    errorMessage: import('vue').Ref<string>;
    lastRejected: import('vue').Ref<boolean>;
}, never>>;
export declare const useUserProfile: import('pinia').StoreDefinition<"guiiai-devtools-user-profile", import('pinia')._UnwrapAll<Pick<{
    isSignedIn: import('vue').Ref<boolean>;
    profile: import('vue').Ref<{
        id: string;
        token: string;
        projectTitle: string;
    } | null>;
    projectTitle: import('vue').Ref<string>;
}, "isSignedIn" | "profile" | "projectTitle">>, Pick<{
    isSignedIn: import('vue').Ref<boolean>;
    profile: import('vue').Ref<{
        id: string;
        token: string;
        projectTitle: string;
    } | null>;
    projectTitle: import('vue').Ref<string>;
}, never>, Pick<{
    isSignedIn: import('vue').Ref<boolean>;
    profile: import('vue').Ref<{
        id: string;
        token: string;
        projectTitle: string;
    } | null>;
    projectTitle: import('vue').Ref<string>;
}, never>>;
export declare function useHandlePropose(): {
    code: import('vue').Ref<string>;
    id: import('vue').Ref<string>;
    selectedFile: import('vue').Ref<string | undefined>;
    selectedLine: import('vue').Ref<number | undefined>;
    selectedColumn: import('vue').Ref<number | undefined>;
    stashingOldCode: import('vue').Ref<string>;
    handleApprove: () => void;
    handlePropose: () => void;
    handleReject: () => void;
    prefetchCode: (id: string) => void;
};
export declare function useLazyChatInstance(): {
    isLoading: import('vue').Ref<boolean | undefined>;
    isError: import('vue').Ref<boolean>;
    abort: () => void;
    regenerate: () => void;
    append: (message: import('./ai').CoreMessage, options?: {
        requirement: string;
        extraBody?: {
            sourceFile?: string;
            targetLine?: number;
            targetColumn?: number;
        };
    }) => void;
    init: (initConfig?: import('./ai').UseLazyLLMInitConfig) => void;
    onStreamFinished: (fn: (message: import('./ai').CoreAssistantMessage) => Promise<void>) => void;
};
