import { ISubmittableResult } from '@polkadot/types/types'; import { AuthorizationRequest, BaseAsset, CustomPermissionGroup, Identity, KnownPermissionGroup, Procedure } from '../../internal'; import { InviteExternalAgentParams, TransactionPermissions } from '../../types'; import { ExtrinsicParams, ProcedureAuthorization, TransactionSpec } from '../../types/internal'; export declare const createGroupAndAuthorizationResolver: (target: Identity) => (receipt: ISubmittableResult) => Promise; /** * @hidden */ export type Params = InviteExternalAgentParams & { asset: BaseAsset; }; /** * @hidden */ export interface Storage { /** * the Permission Group the target will be invited into, or `null` if no existing Group matches the * passed permissions and one has to be created alongside the Authorization Request */ matchingGroup: KnownPermissionGroup | CustomPermissionGroup | null; /** * transactions to grant the Group that has to be created. Only set when `matchingGroup` is `null` */ groupTransactions: TransactionPermissions | null; } /** * @hidden */ export declare function prepareInviteExternalAgent(this: Procedure, args: Params): Promise> | TransactionSpec>>; /** * @hidden * * The chain defers the real Agent check to acceptance: `acceptBecomeAgent` runs * `ensure_agent_permissioned` against the authorization's creator, resolved against the accept * call. So the caller must already hold that permission, or the invite can never be accepted. */ export declare function getAuthorization(this: Procedure, { asset }: Params): ProcedureAuthorization; /** * @hidden */ export declare function prepareStorage(this: Procedure, { asset, permissions }: Params): Promise; /** * @hidden */ export declare const inviteExternalAgent: () => Procedure; //# sourceMappingURL=inviteExternalAgent.d.ts.map