export declare type ObjectMap<K extends string | number | symbol = any, V = any> = {
    [key in K]: V;
};
export declare namespace Identity {
    /**
     *
     */
    class ApiResource {
        /** AllowedAccessTokenSigningAlgorithms */
        allowedAccessTokenSigningAlgorithms: Array<string>;
        /** ApiSecrets */
        apiSecrets: Array<Secret>;
        /** Description */
        description: string;
        /** DisplayName */
        displayName: string;
        /** Enabled */
        enabled: boolean;
        /** Name */
        name: string;
        /** Properties */
        properties: ObjectMap<any, string>;
        /** Scopes */
        scopes: Array<Scope>;
        /** UserClaims */
        userClaims: Array<string>;
        constructor(t?: Partial<ApiResource>);
    }
    /**
     *
     */
    class ApiResourceDto {
        /** Description */
        description: string;
        /** Name */
        name: string;
        constructor(t?: Partial<ApiResourceDto>);
    }
    /**
     * Add profile data for application users by adding properties to the ApplicationUser class.
     */
    class ApplicationUser {
        /** AccessFailedCount */
        accessFailedCount: number;
        /** Gets or sets the name of the card holder. */
        cardHolderName: string;
        /** Gets or sets the card number. */
        cardNumber: string;
        /** Gets or sets the type of the card. */
        cardType: number;
        /** Gets or sets the city. */
        city: string;
        /** ConcurrencyStamp */
        concurrencyStamp: string;
        /** Gets or sets the country. */
        country: string;
        /** Gets or sets the email address for this user. */
        email: string;
        /** EmailConfirmed */
        emailConfirmed: boolean;
        /** Gets or sets the expiration. */
        expiration: string;
        /** Gets or sets the person's first name. */
        firstName: string;
        /** Id */
        id: string;
        /** Gets or sets the initial password. */
        initialPassword: string;
        /** Gets or sets the person's last name. */
        lastName: string;
        /** LockoutEnabled */
        lockoutEnabled: boolean;
        /** LockoutEnd */
        lockoutEnd: string;
        /** Gets or sets name. */
        name: string;
        /** NormalizedEmail */
        normalizedEmail: string;
        /** NormalizedUserName */
        normalizedUserName: string;
        /** Gets or sets a salted and hashed representation of the password for this user. */
        passwordHash: string;
        /** Gets or sets the permissions. */
        permissions: string;
        /** PhoneNumber */
        phoneNumber: string;
        /** PhoneNumberConfirmed */
        phoneNumberConfirmed: boolean;
        /** Gets or sets the PictureUrl. */
        pictureUrl: string;
        /** Gets or sets the security number. */
        securityNumber: string;
        /** SecurityStamp */
        securityStamp: string;
        /** Gets or sets the state. */
        state: string;
        /** Gets or sets the street. */
        street: string;
        /** TwoFactorEnabled */
        twoFactorEnabled: boolean;
        /** Gets or sets userName. */
        userName: string;
        /** Gets or sets the zip code. */
        zipCode: string;
        constructor(t?: Partial<ApplicationUser>);
    }
    /**
     *
     */
    class ClaimDto {
        /** Type */
        type: string;
        /** Value */
        value: string;
        constructor(t?: Partial<ClaimDto>);
    }
    /**
     *
     */
    class Client {
        /** AbsoluteRefreshTokenLifetime */
        absoluteRefreshTokenLifetime: number;
        /** AccessTokenLifetime */
        accessTokenLifetime: number;
        /** AccessTokenType */
        accessTokenType: 0 | 1;
        /** AllowAccessTokensViaBrowser */
        allowAccessTokensViaBrowser: boolean;
        /** AllowOfflineAccess */
        allowOfflineAccess: boolean;
        /** AllowPlainTextPkce */
        allowPlainTextPkce: boolean;
        /** AllowRememberConsent */
        allowRememberConsent: boolean;
        /** AllowedCorsOrigins */
        allowedCorsOrigins: Array<string>;
        /** AllowedGrantTypes */
        allowedGrantTypes: Array<string>;
        /** AllowedIdentityTokenSigningAlgorithms */
        allowedIdentityTokenSigningAlgorithms: Array<string>;
        /** AllowedScopes */
        allowedScopes: Array<string>;
        /** AlwaysIncludeUserClaimsInIdToken */
        alwaysIncludeUserClaimsInIdToken: boolean;
        /** AlwaysSendClientClaims */
        alwaysSendClientClaims: boolean;
        /** AuthorizationCodeLifetime */
        authorizationCodeLifetime: number;
        /** BackChannelLogoutSessionRequired */
        backChannelLogoutSessionRequired: boolean;
        /** BackChannelLogoutUri */
        backChannelLogoutUri: string;
        /** Claims */
        claims: Array<ClientClaim>;
        /** ClientClaimsPrefix */
        clientClaimsPrefix: string;
        /** ClientId */
        clientId: string;
        /** ClientName */
        clientName: string;
        /** ClientSecrets */
        clientSecrets: Array<Secret>;
        /** ClientUri */
        clientUri: string;
        /** ConsentLifetime */
        consentLifetime: number;
        /** Description */
        description: string;
        /** DeviceCodeLifetime */
        deviceCodeLifetime: number;
        /** EnableLocalLogin */
        enableLocalLogin: boolean;
        /** Enabled */
        enabled: boolean;
        /** FrontChannelLogoutSessionRequired */
        frontChannelLogoutSessionRequired: boolean;
        /** FrontChannelLogoutUri */
        frontChannelLogoutUri: string;
        /** IdentityProviderRestrictions */
        identityProviderRestrictions: Array<string>;
        /** IdentityTokenLifetime */
        identityTokenLifetime: number;
        /** IncludeJwtId */
        includeJwtId: boolean;
        /** LogoUri */
        logoUri: string;
        /** PairWiseSubjectSalt */
        pairWiseSubjectSalt: string;
        /** PostLogoutRedirectUris */
        postLogoutRedirectUris: Array<string>;
        /** Properties */
        properties: ObjectMap<any, string>;
        /** ProtocolType */
        protocolType: string;
        /** RedirectUris */
        redirectUris: Array<string>;
        /** RefreshTokenExpiration */
        refreshTokenExpiration: 0 | 1;
        /** RefreshTokenUsage */
        refreshTokenUsage: 0 | 1;
        /** RequireClientSecret */
        requireClientSecret: boolean;
        /** RequireConsent */
        requireConsent: boolean;
        /** RequirePkce */
        requirePkce: boolean;
        /** RequireRequestObject */
        requireRequestObject: boolean;
        /** SlidingRefreshTokenLifetime */
        slidingRefreshTokenLifetime: number;
        /** UpdateAccessTokenClaimsOnRefresh */
        updateAccessTokenClaimsOnRefresh: boolean;
        /** UserCodeType */
        userCodeType: string;
        /** UserSsoLifetime */
        userSsoLifetime: number;
        constructor(t?: Partial<Client>);
    }
    /**
     *
     */
    class ClientClaim {
        /** Type */
        type: string;
        /** Value */
        value: string;
        /** ValueType */
        valueType: string;
        constructor(t?: Partial<ClientClaim>);
    }
    /**
     *
     */
    class ClientDto {
        /** Unique ID of the client */
        clientId: string;
        /** Client display name (used for logging and consent screen) */
        clientName: string;
        /** Specifies if client is enabled (defaults to {true}) */
        enabled: boolean;
        /** URI to client logo (used on consent screen) */
        logoUri: string;
        constructor(t?: Partial<ClientDto>);
    }
    /**
     *
     */
    class ClientPropertyDto {
        /** Key */
        key: string;
        /** Value */
        value: string;
        constructor(t?: Partial<ClientPropertyDto>);
    }
    /**
     *
     */
    class IdentityResource {
        /** Description */
        description: string;
        /** DisplayName */
        displayName: string;
        /** Emphasize */
        emphasize: boolean;
        /** Enabled */
        enabled: boolean;
        /** Name */
        name: string;
        /** Properties */
        properties: ObjectMap<any, string>;
        /** Required */
        required: boolean;
        /** ShowInDiscoveryDocument */
        showInDiscoveryDocument: boolean;
        /** UserClaims */
        userClaims: Array<string>;
        constructor(t?: Partial<IdentityResource>);
    }
    /**
     *
     */
    class IdentityResourceDto {
        /** Description */
        description: string;
        /** Name */
        name: string;
        constructor(t?: Partial<IdentityResourceDto>);
    }
    /**
     *
     */
    class Operation {
        /** From */
        from: string;
        /** Op */
        op: string;
        /** OperationType */
        operationType: 0 | 1 | 2 | 3 | 4 | 5 | 6;
        /** Path */
        path: string;
        /** Value */
        value: object;
        constructor(t?: Partial<Operation>);
    }
    /**
     * 权限代码
     */
    const PERMISSIONS: {
        ROLE_ADD_ROLE: string;
        ROLE_ADD_USER_ROLE: string;
        ROLE_DELETE_ROLEE: string;
        ROLE_GET_ALL: string;
        ROLE_GET_USERS_BY_ROLE: string;
        ROLE_GET_USER_ROLE_BY_USER: string;
        ROLE_MENU_ADD_ROLE_MENU: string;
        ROLE_MENU_GET_ALL_ROLE_MENU: string;
        ROLE_MENU_GET_PERSION_ROLE_MENU: string;
        ROLE_UPDATE_ROLE: string;
        SUPER_ADMIN: string;
        USER_ADD_USER: string;
        USER_GET_ALL: string;
        USER_INIT_PASSWORD: string;
        USER_UPDATE_USER: string;
        WORKING_GROUP_ADD_R_WORKING_GROUP: string;
        WORKING_GROUP_DELETE_WORKING_GROUP: string;
        WORKING_GROUP_GET_ALL: string;
        WORKING_GROUP_GET_USER_BY_WORKING_GROUP_CODE: string;
        WORKING_GROUP_GET_WORKING_GROUPS_BY_USER_ID: string;
        WORKING_GROUP_SET_USER_WORKING_GROUP: string;
        WORKING_GROUP_UPDATE_WORKING_GROUP: string;
    };
    /**
     *
     */
    class Page<T0> {
        /** Items */
        items: Array<T0>;
        /** Total */
        total: number;
        constructor(t?: Partial<Page<T0>>);
    }
    /**
     * PasswordQuery.
     */
    class PasswordQuery {
        /** Gets or sets the NewPassword of the PasswordQuery. */
        newPassword: string;
        /** Gets or sets the OldPassword of the PasswordQuery. */
        oldPassword: string;
        /** Gets or sets the UserName of the PasswordQuery. */
        userName: string;
        constructor(t?: Partial<PasswordQuery>);
    }
    /**
     * The permissions menu.
     */
    class PermissionsMenu {
        /** Gets or sets a value indicating whether disable for the menu item. */
        disabled: boolean;
        /** Gets or sets external link for the menu item. */
        externalLink: string;
        /** Gets or sets the grade. */
        grade: string;
        /** Gets or sets a value indicating whether to display the group name, default: `true`. */
        group: boolean;
        /** Gets or sets a value indicating whether hidden for the menu item. */
        hide: boolean;
        /** Gets or sets a value indicating whether hide in breadcrumbs. */
        hideInBreadcrumb: boolean;
        /** Gets or sets the i18n key of menu item. */
        i18N: string;
        /** Gets or sets icon for the menu item, only valid for the first level menu. */
        icon: string;
        /** Gets or sets id Randomly generated. */
        id: string;
        /** Gets or sets the routing for the menu item. */
        link: string;
        /** Gets or sets the identifier of the menu. */
        menuId: string;
        /** Gets or sets the menu sds. */
        menuSorting: string;
        /** Gets or sets a value indicating whether to expand. */
        open: boolean;
        /** Gets or sets permission code. */
        permisionCode: string;
        /** Gets or sets the record time. */
        recordTime: string;
        /** Gets or sets the identifier of the record user. */
        recordUserId: string;
        /** Gets or sets a value indicating whether to allow reuse. */
        reuse: boolean;
        /** Gets or sets where to display the linked URL. */
        target: string;
        /** Gets or sets the text of menu item. */
        text: string;
        /** Gets or sets parent menu id. */
        upperMenuId: string;
        enName: string;
        chName: string;
        constructor(t?: Partial<PermissionsMenu>);
    }
    /**
     * The permissons menu tree.
     */
    class PermissonsMenuTree {
        /** Gets the children. */
        children: Array<PermissonsMenuTree>;
        /** Menu */
        menu: PermissionsMenu;
        constructor(t?: Partial<PermissonsMenuTree>);
    }
    /**
     *
     */
    class PersistedGrantDto {
        /** Gets the client identifier. */
        clientId: string;
        /** Gets or sets the creation time. */
        creationTime: string;
        /** Gets or sets the data. */
        data: string;
        /** Email */
        email: string;
        /** Gets or sets the expiration. */
        expiration: string;
        /** Gets or sets the key. */
        key: string;
        /** Gets the subject identifier. */
        subjectId: string;
        /** Gets the type. */
        type: string;
        constructor(t?: Partial<PersistedGrantDto>);
    }
    /**
     *
     */
    class ResponseResult<T0> {
        /** Data */
        data: T0;
        /** Message */
        message: string;
        /** State */
        state: boolean;
        constructor(t?: Partial<ResponseResult<T0>>);
    }
    /**
     * RoleMenuDto.
     */
    class RoleMenuQuery {
        /** Gets or sets the menu ids. */
        menuIds: Array<string>;
        /** Gets or sets the name of the role. */
        roleName: string;
        constructor(t?: Partial<RoleMenuQuery>);
    }
    /**
     * Add profile data for application users by adding properties to the ApplicationUser class.
     */
    class RolePermissions {
        /** ConcurrencyStamp */
        concurrencyStamp: string;
        /** Gets or sets a human-friendly description of what the Role does. */
        description: string;
        /** Id */
        id: string;
        /** Gets or sets the name for this role. */
        name: string;
        /** NormalizedName */
        normalizedName: string;
        /** Gets or sets the permissions in menu. */
        permissionsInMenu: Array<string>;
        /** Gets or sets initializes a new instance of Kengic.Identity.API.Models.RolePermissions with arguments. */
        permissionsInRole: Array<string>;
        /** Gets or sets the name of the show. */
        showName: string;
        constructor(t?: Partial<RolePermissions>);
    }
    /**
     *
     */
    class SaveApiScopeQuery {
        /** Description. This value will be used e.g. on the consent screen. */
        description: string;
        /** Display name. This value will be used e.g. on the consent screen. */
        displayName: string;
        /** Specifies whether the consent screen will emphasize this scope. Use this setting for sensitive or important scopes. Defaults to false. */
        emphasize: boolean;
        /** Name of the scope. This is the value a client will use to request the scope. */
        name: string;
        /** Specifies whether the user can de-select the scope on the consent screen. Defaults to false. */
        required: boolean;
        /** ResourceName */
        resourceName: string;
        /** Specifies whether this scope is shown in the discovery document. Defaults to true. */
        showInDiscoveryDocument: boolean;
        /** UserClaims */
        userClaims: Array<string>;
        constructor(t?: Partial<SaveApiScopeQuery>);
    }
    /**
     *
     */
    class SaveApiSecretQuery {
        /** Description */
        description: string;
        /** Expiration */
        expiration: string;
        /** Hash */
        hash: 0 | 1;
        /** ResourceName */
        resourceName: string;
        /** Type */
        type: string;
        /** Value */
        value: string;
        constructor(t?: Partial<SaveApiSecretQuery>);
    }
    /**
     *
     */
    class SaveClientClaimQuery {
        /** ClientId */
        clientId: string;
        /** Type */
        type: string;
        /** Value */
        value: string;
        constructor(t?: Partial<SaveClientClaimQuery>);
    }
    /**
     *
     */
    class SaveClientPropertyQuery {
        /** ClientId */
        clientId: string;
        /** Key */
        key: string;
        /** Value */
        value: string;
        constructor(t?: Partial<SaveClientPropertyQuery>);
    }
    /**
     *
     */
    class SaveClientQuery {
        /** Unique ID of the client */
        clientId: string;
        /** Client display name (used for logging and consent screen) */
        clientName: string;
        /** ClientType */
        clientType: 0 | 1 | 2 | 3 | 4 | 5 | 6;
        /** URI to further information about client (used on consent screen) */
        clientUri: string;
        /** Description */
        description: string;
        /** URI to client logo (used on consent screen) */
        logoUri: string;
        /** LogoutUri */
        logoutUri: string;
        constructor(t?: Partial<SaveClientQuery>);
    }
    /**
     *
     */
    class SaveClientSecretQuery {
        /** ClientId */
        clientId: string;
        /** Description */
        description: string;
        /** Expiration */
        expiration: string;
        /** Hash */
        hash: 0 | 1;
        /** Type */
        type: string;
        /** Value */
        value: string;
        constructor(t?: Partial<SaveClientSecretQuery>);
    }
    /**
     *
     */
    class Scope {
        /** Description */
        description: string;
        /** DisplayName */
        displayName: string;
        /** Emphasize */
        emphasize: boolean;
        /** Name */
        name: string;
        /** Required */
        required: boolean;
        /** ShowInDiscoveryDocument */
        showInDiscoveryDocument: boolean;
        /** UserClaims */
        userClaims: Array<string>;
        constructor(t?: Partial<Scope>);
    }
    /**
     *
     */
    class Secret {
        /** Description */
        description: string;
        /** Expiration */
        expiration: string;
        /** Type */
        type: string;
        /** Value */
        value: string;
        constructor(t?: Partial<Secret>);
    }
    /**
     *
     */
    class StringStringValuesKeyValuePair {
        /** Key */
        key: string;
        /** Value */
        value: Array<string>;
        constructor(t?: Partial<StringStringValuesKeyValuePair>);
    }
    /**
     * WorkingGroup Model.
     */
    class WorkingGroup {
        /** Gets or sets CreateTime. */
        createTime: string;
        /** Gets or sets CreateUser. */
        createUser: string;
        /** Gets or sets CreateTime. */
        deleteFlag: string;
        /** Gets or sets id. */
        id: string;
        /** Gets or sets workingGroupCode. */
        workingGroupCode: string;
        /** Gets or sets workingGroupName. */
        workingGroupName: string;
        constructor(t?: Partial<WorkingGroup>);
    }
    /**
     * UserWorkingGroupQuery.
     */
    class WorkingGroupUserQuery {
        /** Gets or sets the name of the UsreId. */
        usreId: string;
        /** Gets or sets the menu WorkingGroupCodes. */
        workingGroupCodes: Array<string>;
        constructor(t?: Partial<WorkingGroupUserQuery>);
    }
}
