import type { AuxiliaryIdentifierStrategy } from '../http/auxiliary/AuxiliaryIdentifierStrategy';
import type { AccountStore } from '../identity/interaction/email-password/storage/AccountStore';
import type { IdentifierStrategy } from '../util/identifiers/IdentifierStrategy';
import type { PermissionReaderInput } from './PermissionReader';
import { PermissionReader } from './PermissionReader';
import type { PermissionMap } from './permissions/Permissions';
/**
 * Allows control access if the request is being made by the owner of the pod containing the resource.
 */
export declare class OwnerPermissionReader extends PermissionReader {
    protected readonly logger: import("..").Logger;
    private readonly accountStore;
    private readonly authStrategy;
    private readonly identifierStrategy;
    constructor(accountStore: AccountStore, authStrategy: AuxiliaryIdentifierStrategy, identifierStrategy: IdentifierStrategy);
    handle(input: PermissionReaderInput): Promise<PermissionMap>;
    /**
     * Find the base URL of the pod the given credentials own.
     * Will throw an error if none can be found.
     */
    private findPodBaseUrl;
}
