import { User, Client, Token, AbstractGrantType, TokenOptions, Request } from 'oauth2-server';
import { Model } from './types';
export interface Options extends TokenOptions {
    model: Model;
}
declare class AppleGrantType extends AbstractGrantType {
    model: Model;
    appIds: string[];
    constructor(options: Options);
    handle(request: Request, client: Client): Promise<Token | import("oauth2-server").Falsey>;
    getUser(request: Request): Promise<User>;
    saveToken(user: User, client: Client, scope: string | string[]): Promise<Token | import("oauth2-server").Falsey>;
}
export default AppleGrantType;
