///
import { Long } from "../../helpers";
import * as _m0 from "protobufjs/minimal";
export declare const protobufPackage = "bnbchain.greenfield.permission";
/** Params defines the parameters for the module. */
export interface Params {
/** maximum_statements_num defines the maximum number of statements allowed in a policy */
maximumStatementsNum: Long;
/**
* maximum_group_num used to set the upper limit on the number of groups to which a resource can grant access permissions.
* By placing a cap on the number of group permissions, permission control policies can be made more robust and better
* enforced, thereby reducing the chances of DDos and other security incidents.
*/
maximumGroupNum: Long;
}
/** Params defines the parameters for the module. */
export interface ParamsSDKType {
maximum_statements_num: Long;
maximum_group_num: Long;
}
export declare const Params: {
encode(message: Params, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): Params;
fromJSON(object: any): Params;
toJSON(message: Params): unknown;
fromPartial Long.Long;
and: (other: string | number | Long.Long) => Long.Long;
compare: (other: string | number | Long.Long) => number;
comp: (other: string | number | Long.Long) => number;
divide: (divisor: string | number | Long.Long) => Long.Long;
div: (divisor: string | number | Long.Long) => Long.Long;
equals: (other: string | number | Long.Long) => boolean;
eq: (other: string | number | Long.Long) => boolean;
getHighBits: () => number;
getHighBitsUnsigned: () => number;
getLowBits: () => number;
getLowBitsUnsigned: () => number;
getNumBitsAbs: () => number;
greaterThan: (other: string | number | Long.Long) => boolean;
gt: (other: string | number | Long.Long) => boolean;
greaterThanOrEqual: (other: string | number | Long.Long) => boolean;
gte: (other: string | number | Long.Long) => boolean;
isEven: () => boolean;
isNegative: () => boolean;
isOdd: () => boolean;
isPositive: () => boolean;
isZero: () => boolean;
lessThan: (other: string | number | Long.Long) => boolean;
lt: (other: string | number | Long.Long) => boolean;
lessThanOrEqual: (other: string | number | Long.Long) => boolean;
lte: (other: string | number | Long.Long) => boolean;
modulo: (other: string | number | Long.Long) => Long.Long;
mod: (other: string | number | Long.Long) => Long.Long;
multiply: (multiplier: string | number | Long.Long) => Long.Long;
mul: (multiplier: string | number | Long.Long) => Long.Long;
negate: () => Long.Long;
neg: () => Long.Long;
not: () => Long.Long;
notEquals: (other: string | number | Long.Long) => boolean;
neq: (other: string | number | Long.Long) => boolean;
or: (other: string | number | Long.Long) => Long.Long;
shiftLeft: (numBits: number | Long.Long) => Long.Long;
shl: (numBits: number | Long.Long) => Long.Long;
shiftRight: (numBits: number | Long.Long) => Long.Long;
shr: (numBits: number | Long.Long) => Long.Long;
shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long;
shru: (numBits: number | Long.Long) => Long.Long;
subtract: (subtrahend: string | number | Long.Long) => Long.Long;
sub: (subtrahend: string | number | Long.Long) => Long.Long;
toInt: () => number;
toNumber: () => number;
toBytes: (le?: boolean | undefined) => number[];
toBytesLE: () => number[];
toBytesBE: () => number[];
toSigned: () => Long.Long;
toString: (radix?: number | undefined) => string;
toUnsigned: () => Long.Long;
xor: (other: string | number | Long.Long) => Long.Long;
} & Record, never>) | undefined;
maximumGroupNum?: string | number | (Long.Long & {
high: number;
low: number;
unsigned: boolean;
add: (addend: string | number | Long.Long) => Long.Long;
and: (other: string | number | Long.Long) => Long.Long;
compare: (other: string | number | Long.Long) => number;
comp: (other: string | number | Long.Long) => number;
divide: (divisor: string | number | Long.Long) => Long.Long;
div: (divisor: string | number | Long.Long) => Long.Long;
equals: (other: string | number | Long.Long) => boolean;
eq: (other: string | number | Long.Long) => boolean;
getHighBits: () => number;
getHighBitsUnsigned: () => number;
getLowBits: () => number;
getLowBitsUnsigned: () => number;
getNumBitsAbs: () => number;
greaterThan: (other: string | number | Long.Long) => boolean;
gt: (other: string | number | Long.Long) => boolean;
greaterThanOrEqual: (other: string | number | Long.Long) => boolean;
gte: (other: string | number | Long.Long) => boolean;
isEven: () => boolean;
isNegative: () => boolean;
isOdd: () => boolean;
isPositive: () => boolean;
isZero: () => boolean;
lessThan: (other: string | number | Long.Long) => boolean;
lt: (other: string | number | Long.Long) => boolean;
lessThanOrEqual: (other: string | number | Long.Long) => boolean;
lte: (other: string | number | Long.Long) => boolean;
modulo: (other: string | number | Long.Long) => Long.Long;
mod: (other: string | number | Long.Long) => Long.Long;
multiply: (multiplier: string | number | Long.Long) => Long.Long;
mul: (multiplier: string | number | Long.Long) => Long.Long;
negate: () => Long.Long;
neg: () => Long.Long;
not: () => Long.Long;
notEquals: (other: string | number | Long.Long) => boolean;
neq: (other: string | number | Long.Long) => boolean;
or: (other: string | number | Long.Long) => Long.Long;
shiftLeft: (numBits: number | Long.Long) => Long.Long;
shl: (numBits: number | Long.Long) => Long.Long;
shiftRight: (numBits: number | Long.Long) => Long.Long;
shr: (numBits: number | Long.Long) => Long.Long;
shiftRightUnsigned: (numBits: number | Long.Long) => Long.Long;
shru: (numBits: number | Long.Long) => Long.Long;
subtract: (subtrahend: string | number | Long.Long) => Long.Long;
sub: (subtrahend: string | number | Long.Long) => Long.Long;
toInt: () => number;
toNumber: () => number;
toBytes: (le?: boolean | undefined) => number[];
toBytesLE: () => number[];
toBytesBE: () => number[];
toSigned: () => Long.Long;
toString: (radix?: number | undefined) => string;
toUnsigned: () => Long.Long;
xor: (other: string | number | Long.Long) => Long.Long;
} & Record, never>) | undefined;
} & Record, never>>(object: I): Params;
fromSDK(object: ParamsSDKType): Params;
toSDK(message: Params): ParamsSDKType;
};