28 lines
1.1 KiB
TypeScript
28 lines
1.1 KiB
TypeScript
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<AbleAction, AbleState>;
|
|
export declare const entityDesc: EntityDesc<Schema, Action, '', {
|
|
ableState: AbleState;
|
|
}>;
|