import type { Bip44Account } from "@metamask/account-api";
import type { TraceCallback } from "@metamask/controller-utils";
import type { EntropySourceId, KeyringAccount } from "@metamask/keyring-api";
import type { InternalAccount } from "@metamask/keyring-internal-api";
import type { SnapId } from "@metamask/snaps-sdk";
import type { CaipChainId } from "@metamask/utils";
import type { MultichainAccountServiceMessenger } from "../types.cjs";
import { SnapAccountProvider } from "./SnapAccountProvider.cjs";
import type { SnapAccountProviderConfig } from "./SnapAccountProvider.cjs";
export type SolAccountProviderConfig = SnapAccountProviderConfig;
export declare const SOL_ACCOUNT_PROVIDER_NAME = "Solana";
export declare const SOL_ACCOUNT_PROVIDER_DEFAULT_CONFIG: SnapAccountProviderConfig;
export declare class SolAccountProvider extends SnapAccountProvider {
    #private;
    static NAME: string;
    static SOLANA_SNAP_ID: SnapId;
    protected readonly v1DiscoveryScopes: CaipChainId[];
    constructor(messenger: MultichainAccountServiceMessenger, config?: SolAccountProviderConfig, trace?: TraceCallback);
    getName(): string;
    isAccountCompatible(account: Bip44Account<InternalAccount>): boolean;
    protected toBip44Account(account: KeyringAccount, { entropySource, groupIndex, }: {
        entropySource: EntropySourceId;
        groupIndex: number;
    }): Bip44Account<KeyringAccount>;
}
//# sourceMappingURL=SolAccountProvider.d.cts.map