import Sequelize from "sequelize"; import { GraphQLInputObjectType, GraphQLObjectType, GraphQLList } from "graphql"; import { C2Utils } from "@vostro/c2-utils/lib/types"; declare const UserModel: { name: string; define: { userName: { type: Sequelize.StringDataTypeConstructor; allowNull: boolean; unique: boolean; }; disabled: { type: Sequelize.AbstractDataTypeConstructor; allowNull: boolean; defaultValue: boolean; }; email: { type: Sequelize.TextDataTypeConstructor; allowNull: boolean; }; firstName: { type: Sequelize.StringDataTypeConstructor; allowNull: boolean; }; lastName: { type: Sequelize.StringDataTypeConstructor; allowNull: boolean; }; }; relationships: ({ type: string; model: string; name: string; options: { foreignKey: string; as?: undefined; }; } | { type: string; model: string; name: string; options: { as: string; foreignKey: string; }; })[]; expose: { instanceMethods: { query: { permissions: { type: GraphQLList>; }; }; }; classMethods: { query: { getCurrentUser: { type: string; args: {}; }; getPermissions: { type: GraphQLList>; args: {}; }; isLoggedIn: { type: import("graphql").GraphQLScalarType; args: {}; }; }; mutations: { login: { type: import("graphql").GraphQLScalarType; args: { userName: { type: import("graphql").GraphQLScalarType; }; password: { type: import("graphql").GraphQLScalarType; }; captcha: { type: import("graphql").GraphQLScalarType; }; }; }; register: { type: string; args: { input: { type: GraphQLInputObjectType; }; }; }; logout: { type: import("graphql").GraphQLScalarType; }; getToken: { type: import("graphql").GraphQLScalarType; args: { userName: { type: import("graphql").GraphQLScalarType; }; password: { type: import("graphql").GraphQLScalarType; }; }; }; }; }; }; options: { tableName: string; indexes: ({ unique: boolean; fields: string[]; } | { fields: string[]; unique?: undefined; })[]; hooks: { beforeValidate: ((model: { id?: any; userName: any; }, options?: {}) => Promise<{ id?: any; userName: any; }>)[]; beforeFind: ((options: C2Utils.FindOptions) => Promise)[]; beforeCreate: ((instance: any, options: C2Utils.FindOptions) => Promise)[]; beforeUpdate: ((instance: any, options: C2Utils.FindOptions) => Promise)[]; beforeDestroy: ((instance: any, options: C2Utils.FindOptions) => Promise)[]; }; classMethods: { getToken(args: { userName: any; password: any; }, context: any): Promise; getCurrentUser(args: any, context: { getUser: () => any; }): any; isLoggedIn(args: any, context: { getUser: () => any; }): Promise; login(args: { userName: any; password: any; captcha: any; doNotLogin?: boolean | undefined; }, context: any): Promise; loginWithUser({ userName, password, doNotLogin, }: { userName: string; password: string; doNotLogin?: boolean | undefined; }, context: any): Promise; register({ input, }: any, context: { getRequest: () => any; override: any; login: (arg0: any) => any; }): Promise; logout(args: any, context: C2Utils.DataContext): Promise; getPermissions(args: any, context: C2Utils.DataContext): Promise; }; instanceMethods: { permission(this: any, args: any, context: C2Utils.DataContext): Promise; }; }; }; export default UserModel; //# sourceMappingURL=user.d.ts.map