import { String } from 'oak-domain/lib/types/DataType'; import { EntityShape } from 'oak-domain/lib/types/Entity'; import { AbleAction, AbleState } from 'oak-domain/lib/actions/action'; import { ActionDef } from 'oak-domain/lib/types'; import { EntityDesc } from 'oak-domain/lib/types/EntityDesc'; import { Schema as System } from './System'; import { StringListJson } from '../types/datatype'; export interface Schema extends EntityShape { system: System; name: String<64>; type: "oak" | "gitea" | "github" | "google" | "facebook" | "twitter" | "linkedin" | "custom" | "gitlab" | "microsoft" | "apple" | "tencent" | "weixin" | "weibo" | "dingtalk"; logo?: String<256>; authorizationEndpoint: String<256>; tokenEndpoint: String<256>; userInfoEndpoint?: String<256>; revokeEndpoint?: String<256>; clientId: String<128>; clientSecret: String<128>; redirectUri: String<256>; scopes?: StringListJson; autoRegister: Boolean; } export type Action = AbleAction; export declare const AbleActionDef: ActionDef; export declare const entityDesc: EntityDesc;