import { GroupwareAccount } from './types'; import { HttpClient } from '../../../http'; export declare const useGroupwareAccountsStore: import("pinia").SetupStoreDefinition<"accounts", { accounts: import("vue").Ref<{ accountId: string; name: string; isPersonal: boolean; isReadOnly: boolean; identities: { id: string; textSignature: string; htmlSignature: string; name?: string; email?: string; mayDelete?: boolean; }[]; capabilities?: { mail?: { maxMailboxDepth: number; maxSizeMailboxName: number; maxMailboxesPerEmail: number; maxSizeAttachmentsPerEmail: number; mayCreateTopLevelMailbox: boolean; maxDelayedSend: number; }; sieve?: { maxSizeScriptName: number; maxSizeScript: number; maxNumberScripts: number; maxNumberRedirects: number; }; }; accountCapabilities?: Record>; }[], { accountId: string; name: string; isPersonal: boolean; isReadOnly: boolean; identities: { id: string; textSignature: string; htmlSignature: string; name?: string; email?: string; mayDelete?: boolean; }[]; capabilities?: { mail?: { maxMailboxDepth: number; maxSizeMailboxName: number; maxMailboxesPerEmail: number; maxSizeAttachmentsPerEmail: number; mayCreateTopLevelMailbox: boolean; maxDelayedSend: number; }; sieve?: { maxSizeScriptName: number; maxSizeScript: number; maxNumberScripts: number; maxNumberRedirects: number; }; }; accountCapabilities?: Record>; }[] | { accountId: string; name: string; isPersonal: boolean; isReadOnly: boolean; identities: { id: string; textSignature: string; htmlSignature: string; name?: string; email?: string; mayDelete?: boolean; }[]; capabilities?: { mail?: { maxMailboxDepth: number; maxSizeMailboxName: number; maxMailboxesPerEmail: number; maxSizeAttachmentsPerEmail: number; mayCreateTopLevelMailbox: boolean; maxDelayedSend: number; }; sieve?: { maxSizeScriptName: number; maxSizeScript: number; maxNumberScripts: number; maxNumberRedirects: number; }; }; accountCapabilities?: Record>; }[]>; currentAccount: import("vue").ComputedRef<{ accountId: string; name: string; isPersonal: boolean; isReadOnly: boolean; identities: { id: string; textSignature: string; htmlSignature: string; name?: string; email?: string; mayDelete?: boolean; }[]; capabilities?: { mail?: { maxMailboxDepth: number; maxSizeMailboxName: number; maxMailboxesPerEmail: number; maxSizeAttachmentsPerEmail: number; mayCreateTopLevelMailbox: boolean; maxDelayedSend: number; }; sieve?: { maxSizeScriptName: number; maxSizeScript: number; maxNumberScripts: number; maxNumberRedirects: number; }; }; accountCapabilities?: Record>; }>; updateAccountField: ({ id, field, value }: { id: T["accountId"]; field: keyof T; value: T[keyof T]; }) => void; setAccounts: (data: GroupwareAccount[]) => void; upsertAccount: (data: GroupwareAccount) => void; removeAccounts: (values: GroupwareAccount[]) => void; setCurrentAccount: (data: GroupwareAccount) => void; reset: () => void; loadAccounts: (client: HttpClient) => Promise<{ accountId: string; name: string; isPersonal: boolean; isReadOnly: boolean; identities: { id: string; textSignature: string; htmlSignature: string; name?: string; email?: string; mayDelete?: boolean; }[]; capabilities?: { mail?: { maxMailboxDepth: number; maxSizeMailboxName: number; maxMailboxesPerEmail: number; maxSizeAttachmentsPerEmail: number; mayCreateTopLevelMailbox: boolean; maxDelayedSend: number; }; sieve?: { maxSizeScriptName: number; maxSizeScript: number; maxNumberScripts: number; maxNumberRedirects: number; }; }; accountCapabilities?: Record>; }[]>; loadCurrentAccount: ({ client, query }: { client: HttpClient; query?: string; }) => Promise; isLoading: import("vue").ComputedRef; }>; export type GroupwareAccountsStore = ReturnType;