import * as Core from 'cloudflaredev/core';
import { APIResource } from 'cloudflaredev/resource';
import * as AppTypesAPI from 'cloudflaredev/resources/zero-trust/gateway/app-types';
import { SinglePage } from 'cloudflaredev/pagination';
export declare class AppTypes extends APIResource {
    /**
     * Fetches all application and application type mappings.
     */
    list(params: AppTypeListParams, options?: Core.RequestOptions): Core.PagePromise<AppTypesSinglePage, AppType>;
}
export declare class AppTypesSinglePage extends SinglePage<AppType> {
}
export type AppType = AppType.ZeroTrustGatewayApplication | AppType.ZeroTrustGatewayApplicationType;
export declare namespace AppType {
    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 AppType = AppTypesAPI.AppType;
    export import AppTypesSinglePage = AppTypesAPI.AppTypesSinglePage;
    export import AppTypeListParams = AppTypesAPI.AppTypeListParams;
}
//# sourceMappingURL=app-types.d.ts.map