import type TransformingNetworkClient from '../../communication/TransformingNetworkClient';
import type Permission from '../../data/permissions/Permission';
import { type PermissionData } from '../../data/permissions/Permission';
import type Callback from '../../types/Callback';
import Binder from '../Binder';
import { type GetParameters } from './parameters';
export default class PermissionsBinder extends Binder<PermissionData, Permission> {
    protected readonly networkClient: TransformingNetworkClient;
    constructor(networkClient: TransformingNetworkClient);
    /**
     * Retrieve the details on a specific permission, and see if the permission is granted to the current app access token.
     *
     * @since 3.2.0
     * @see https://docs.mollie.com/reference/get-permission
     */
    get(id: string, parameters?: GetParameters): Promise<Permission>;
    /**
     * @deprecated Passing a callback as the second argument is deprecated and will be removed in the next major version. Use the returned promise instead, or pass `parameters` before the callback.
     */
    get(id: string, callback: Callback<Permission>): void;
    get(id: string, parameters: GetParameters, callback: Callback<Permission>): void;
    /**
     * List all permissions available with the current app access token. The list is not paginated.
     *
     * @since 3.2.0
     * @see https://docs.mollie.com/reference/list-permissions
     */
    list(): Promise<Permission[]>;
    list(callback: Callback<Permission[]>): void;
}
