import type { IResponse } from '../_interfaces/IQuery'; export declare type AuthIntranetOptions = { /** * 组件启用验证内网环境功能 */ enable?: boolean; /** * 检测是否为内网时访问的网页地址 */ url?: string; /** * 启用后仅在开发模式生效,模拟返回成功的结果 */ mock?: boolean; /** * 自定义验证内网环境的方法 * 返回为 true 时表示当前处于内网环境 */ customCheckIsIntranet?: () => Promise; }; export declare type AuthPermissionOptions = { /** * 组件启用验证访问模块权限功能 */ enable?: boolean; /** * 需鉴权的模块名称 * 非自定义验证模块权限的方法时,必须设置 key 的值 */ key?: string; /** * 权限请求接口的前缀 */ prefix?: string; /** * 权限请求接口的地址 */ api?: string; /** * 启用后仅在开发模式生效,模拟返回成功的结果 */ mock?: boolean; /** * 自定义验证模块权限的方法 * 返回为 true 时表示用户拥有模块的权限 */ customCheckPermission?: () => Promise; }; /** * 检查用户当前是否在内网环境 * @param options.url 用于检测当前是否在内网环境的网页地址,默认为 https://dtmp.aliyun-inc.com/checkpreload.htm * @param options.mock 模拟当前在内网环境,仅限开发模式下使用 * @param options.customCheckIsIntranet 自定义验证内网环境的方法。此时 options.url 无效 * @returns 如果在内网环境,则返回对象的 `data` 属性值为 `true` */ export declare const checkIsIntranet: (options: AuthIntranetOptions) => Promise>; /** * 检查用户是否有访问对应模块的权限 * @param options.key 需鉴权的模块名称,例如 `gts_team` * @param options.prefix 权限请求接口的前缀,例如 `https://dev.gts.work:8088/mock` * @param options.api 权限请求接口的地址,例如 `/user/get-permission` * @param options.mock 模拟当前拥有 options.key 模块的权限,仅限开发模式下使用 * @param options.customCheckPermission 自定义验证模块权限的方法。此时 options.{key,prefix,api} 无效 * @returns 如果有访问对应模块的权限,则返回对象的 `data` 属性值为 `true` */ export declare const checkPermission: (options: AuthPermissionOptions) => Promise>;