import type { InvokerPermission, PermissionRequest, RequestedPermission, XyoPermissions } from '@xyo-network/xl1-protocol/protocol-lib';
import type { Invoker, PermissionsStore } from './store/index.js';
/**
 * In-memory implementation of XyoPermissions for testing or ephemeral use cases.
 * Does not persist data beyond the lifetime of the instance.
 * Assumes all permission requests are granted and revocations always succeed.
 */
export declare class SimpleXyoPermissions implements XyoPermissions {
    /** invoker configuration or state exposed by this contract. */
    invoker: Invoker;
    private _store;
    /** Creates an instance with the supplied configuration. */
    constructor(store: PermissionsStore);
    /** Returns the store result exposed by this provider. */
    get store(): PermissionsStore;
    /** Returns permissions. */
    getPermissions(): Promise<InvokerPermission[]>;
    /** Requests permissions from the provider. */
    requestPermissions(permissions: PermissionRequest[]): Promise<RequestedPermission[]>;
    /** Removes data through the revoke permissions operation. */
    revokePermissions(permissions: PermissionRequest): Promise<RequestedPermission[]>;
}
//# sourceMappingURL=SimpleXyoPermissions.d.ts.map