import Joi from 'joi'; import { MfaSpec, MfaSpecChallenge, RoleMetadata, Rule, RuleConditions } from './auth'; import { RoleModel, RoleModelCreate, RoleModelCreateMany, RoleModelDelete, RoleModelDeleteMany, RoleModelFindMany, RoleModelFindUnique, RoleModelSelect, RoleModelUpdate, RoleModelUpdateMany } from './model'; export declare enum AppDomain { MERCHANT = "MERCHANT", CONSUMER = "CONSUMER", ADMIN = "ADMIN", DEVICE = "DEVICE", SYSTEM = "SYSTEM", NETWORK = "NETWORK", GATEWAY = "GATEWAY" } export declare enum TokenKind { TOKEN = "TOKEN", EXTENDED_TOKEN = "EXTENDED_TOKEN", REFRESH_TOKEN = "REFRESH_TOKEN", REFRESH_EXTENDED_TOKEN = "REFRESH_EXTENDED_TOKEN" } export declare const _id: Joi.NumberSchema; export declare const _idString: Joi.NumberSchema; export declare const _string: Joi.StringSchema; export declare const _boolean: Joi.BooleanSchema; export declare const _object: Joi.ObjectSchema; export declare const _modelInclude: Joi.AlternativesSchema; export declare const _userLogin: Joi.StringSchema; export declare const _userLoginId: Joi.NumberSchema; export declare const _tokenKind: Joi.StringSchema; export declare const _localeCode: Joi.StringSchema; export declare const _appDomain: Joi.StringSchema; export declare enum MfaType { TOTP = "TOTP", OTP = "OTP" } export declare const _mfaType: Joi.StringSchema; export declare const _mfaChallenge: Joi.ObjectSchema; export declare const _mfaSpec: Joi.ObjectSchema; export declare const _ruleAction: Joi.StringSchema; export declare const _ruleSubject: Joi.StringSchema; export declare const _ruleFields: Joi.StringSchema; export declare const _ruleConditions: Joi.ObjectSchema; export declare const _ruleInverted: Joi.BooleanSchema; export declare const _rule: Joi.ObjectSchema; export declare const _rules: Joi.ArraySchema; export declare const _roleModelSelect: Joi.ObjectSchema; export declare const _roleModelWhereUnique: Joi.ObjectSchema>; export declare const _roleModelWhere: Joi.ArraySchema>; export declare const _roleModelFindUnique: Joi.ObjectSchema; export declare const _roleModelFindMany: Joi.ObjectSchema; export declare const _roleModelUpdate: Joi.ObjectSchema; export declare const _roleModelUpdateMany: Joi.ObjectSchema; export declare const _roleModelDelete: Joi.ObjectSchema; export declare const _roleModelDeleteMany: Joi.ObjectSchema; export declare const _roleModelCreate: Joi.ObjectSchema; export declare const _roleModelCreateMany: Joi.ObjectSchema; export declare const _roleModel: Joi.ObjectSchema; export declare const _roleAttributes: { roleOrgId: Joi.NumberSchema; roleOrgCode: Joi.StringSchema; roleOrgType: Joi.StringSchema; roleType: Joi.StringSchema; }; export declare const _roleMetadata: Joi.ObjectSchema; export declare const _rolesMetadata: Joi.ArraySchema; export declare function findRule(rules: Rule[], action: string, subject: string): Rule; export declare function validateOrThrowError(schema: Joi.AnySchema, data: any, options?: Joi.ValidationOptions, fnName?: string, errorCode?: string, errorMessage?: string, params?: any): any;