import { TokenPermission, TokenTransition } from '../_types';
import { Result } from 'neverthrow';
import { TokenDefinitionParticleInput } from './tokenDefinitionParticleBase';
import { MutableSupplyTokenDefinitionParticleT } from './_types';
export declare const isMutableTokenDefinitionParticle: (something: unknown) => something is MutableSupplyTokenDefinitionParticleT;
export declare const MutableSupplyTokenDefinitionParticle: {
    JSONDecoder: import("@radixdlt/data-formats").Decoder;
    fromJSON: (json: unknown) => Result<MutableSupplyTokenDefinitionParticleT, Error[]>;
    JSONDecoders: import("@radixdlt/data-formats").Decoder[];
    SERIALIZER: string;
    create: (input: Readonly<{
        symbol: string;
        name: string;
        address: import("@radixdlt/account").AddressT;
        description?: string | undefined;
        granularity?: import("@radixdlt/primitives").AmountT | undefined;
        url?: string | URL | undefined;
        iconURL?: string | URL | undefined;
    }> & Readonly<{
        permissions?: Readonly<{
            mint: TokenPermission;
            burn: TokenPermission;
        }> | undefined;
    }>) => Result<MutableSupplyTokenDefinitionParticleT, Error>;
};
//# sourceMappingURL=mutableSupplyTokenDefinitionParticle.d.ts.map