import type { MetaSysProps, DefaultElements, MakeRequest } from '../common-types';
export type PersonalAccessTokenProps = {
    sys: MetaSysProps & {
        expiresAt?: string;
    };
    name: string;
    scopes: 'content_management_manage'[];
    revokedAt: null | string;
    token?: string;
};
/**
 * @deprecated Use `PersonalAccessTokenProps` instead.
 */
export type PersonalAccessTokenProp = PersonalAccessTokenProps;
export type CreatePersonalAccessTokenProps = Pick<PersonalAccessToken, 'name' | 'scopes'> & {
    expiresIn?: number;
};
export interface PersonalAccessToken extends PersonalAccessTokenProps, DefaultElements<PersonalAccessTokenProps> {
    /**
     * Revokes a personal access token
     * @returns Object the revoked personal access token
     * @example ```javascript
     * const contentful = require('contentful-management')
     *
     * const client = contentful.createClient({
     *  accessToken: <content_management_api_key>
     * })
     *
     * client.getPersonalAccessToken('<token-id>')
     *  .then((personalAccessToken) => {
     *    return personalAccessToken.revoke()
     *  })
     *  .catch(console.error)
     * ```
     */
    revoke(): Promise<PersonalAccessToken>;
}
/**
 * @internal
 * @param makeRequest - function to make requests via an adapter
 * @param data - Raw  personal access token data
 * @returns Wrapped personal access token
 */
export declare function wrapPersonalAccessToken(makeRequest: MakeRequest, data: PersonalAccessTokenProps): PersonalAccessToken;
/**
 * @internal
 * @param makeRequest - function to make requests via an adapter
 * @param data - Raw personal access collection data
 * @returns Wrapped personal access token collection data
 */
export declare const wrapPersonalAccessTokenCollection: (makeRequest: MakeRequest, data: import("..").CollectionProp<PersonalAccessTokenProps>) => import("..").Collection<PersonalAccessToken, PersonalAccessTokenProps>;
