import { AppAuth } from "../auth/AppAuth";
import type { CreateUser, SafeUser, User, UserPool } from "../auth/authenticate/Authenticator";
export declare class AppUserPool implements UserPool {
    private appAuth;
    constructor(appAuth: AppAuth);
    get em(): import("..").EntityManager<import("..").DB>;
    get users(): import("..").Entity<"users", {
        email: import("../data/fields").TextField<true>;
        strategy: import("../data/fields").TextField<true>;
        strategy_value: import("../data/fields").TextField<true>;
        role: import("../data/fields").TextField<false> & {
            required: () => import("../data/fields").TextField<true>;
        };
    }>;
    findBy(strategy: string, prop: keyof SafeUser, value: any): Promise<import("..").Users>;
    create(strategy: string, payload: CreateUser & Partial<Omit<User, "id">>): Promise<import("..").Users>;
    private toggleStrategyValueVisibility;
}
