import type { AccountStore } from '../identity/interaction/account/util/AccountStore';
import type { PasswordStore } from '../identity/interaction/password/util/PasswordStore';
import type { PodCreator } from '../identity/interaction/pod/util/PodCreator';
import { Initializer } from './Initializer';
export interface SeededAccountInitializerArgs {
    /**
     * Creates the accounts.
     */
    accountStore: AccountStore;
    /**
     * Adds the login methods.
     */
    passwordStore: PasswordStore;
    /**
     * Creates the pods.
     */
    podCreator: PodCreator;
    /**
     * File path of the JSON describing the accounts to seed.
     */
    configFilePath?: string;
}
/**
 * Initializes a set of accounts based on the input data.
 * These accounts have exactly 1 email/password login method, and 0 or more pods.
 * The pod settings that can be defined are identical to those of the {@link CreatePodHandler}.
 */
export declare class SeededAccountInitializer extends Initializer {
    protected readonly logger: import("global-logger-factory").Logger<unknown>;
    private readonly accountStore;
    private readonly passwordStore;
    private readonly podCreator;
    private readonly configFilePath?;
    constructor(args: SeededAccountInitializerArgs);
    handle(): Promise<void>;
}
