import * as Core from 'cloudflare/core';
import { APIResource } from 'cloudflare/resource';
import * as AppTypesAPI from 'cloudflare/resources/zero-trust/gateway/app-types';
import { SinglePage } from 'cloudflare/pagination';
export declare class AppTypes extends APIResource {
    /**
     * Fetches all application and application type mappings.
     */
    list(params: AppTypeListParams, options?: Core.RequestOptions): Core.PagePromise<ZeroTrustGatewayAppTypesSinglePage, ZeroTrustGatewayAppTypes>;
}
export declare class ZeroTrustGatewayAppTypesSinglePage extends SinglePage<ZeroTrustGatewayAppTypes> {
}
export type ZeroTrustGatewayAppTypes = ZeroTrustGatewayAppTypes.ZeroTrustGatewayApplication | ZeroTrustGatewayAppTypes.ZeroTrustGatewayApplicationType;
export declare namespace ZeroTrustGatewayAppTypes {
    interface ZeroTrustGatewayApplication {
        /**
         * The identifier for this application. There is only one application per ID.
         */
        id?: number;
        /**
         * The identifier for the type of this application. There can be many applications
         * with the same type. This refers to the `id` of a returned application type.
         */
        application_type_id?: number;
        created_at?: string;
        /**
         * The name of the application or application type.
         */
        name?: string;
    }
    interface ZeroTrustGatewayApplicationType {
        /**
         * The identifier for the type of this application. There can be many applications
         * with the same type. This refers to the `id` of a returned application type.
         */
        id?: number;
        created_at?: string;
        /**
         * A short summary of applications with this type.
         */
        description?: string;
        /**
         * The name of the application or application type.
         */
        name?: string;
    }
}
export interface AppTypeListParams {
    /**
     * Identifier
     */
    account_id: string;
}
export declare namespace AppTypes {
    export import ZeroTrustGatewayAppTypes = AppTypesAPI.ZeroTrustGatewayAppTypes;
    export import ZeroTrustGatewayAppTypesSinglePage = AppTypesAPI.ZeroTrustGatewayAppTypesSinglePage;
    export import AppTypeListParams = AppTypesAPI.AppTypeListParams;
}
//# sourceMappingURL=app-types.d.ts.map